説明
この関数は、subject の中に現れるすべての
search(大文字小文字を区別しない)を
replace に置き換えた文字列あるいは配列を返します。
一般に、凝った置換ルールが必要ないのであれば、
preg_replace() で i
修正子を使用するかわりにこの関数を使用すべきです。
パラメータ
search および
replace が配列の場合は、
str_ireplace() はそれぞれの配列から取り出した
値を使用して subject の置換を行います。
replace の要素数が
search より少ない場合は、残りの要素は
空の文字列に置き換えられます。もし search
が配列で replace が文字列だった場合は
すべての search が同じ文字列に置き換えられます。
しかし、逆は意味がありません。
search あるいは replace
が配列の場合は、配列の最初の要素から順に処理されます。
-
search -
探したい値。needle (針) と呼ばれることもあります。 配列を使えば、複数の値を指定することもできます。
-
replace -
見つかった
searchを置き換える値。 配列を使えば、複数の値を指定することもできます。 -
subject -
検索・置換の対象となる文字列あるいは配列。 haystack (干し草の山) と呼ばれることもあります。
subjectが配列の場合は、そのすべての要素に 対して検索と置換が行われ、返される結果も配列となります。 -
count -
指定した場合は、マッチして置換が行われた箇所の個数がここに格納されます。
返り値
置換した文字列あるいは配列を返します。
変更履歴
| バージョン | 説明 |
|---|---|
| 5.0.0 |
count パラメータが追加されました。
|
例
例1 str_ireplace() の例
<?php
$bodytag = str_ireplace("%body%", "black", "<body text=%BODY%>");
?>
注意
注意: この関数はバイナリデータに対応しています。
置換の順番に関するメモ
str_ireplace() は左から右へと置換を行うので、 複数の置換を行うときには、前に追加された値を置換する可能性もあります。 str_replace() のドキュメントにある 2 番目の例が、これが及ぼす影響の実例です。
参考
- str_replace() - 検索文字列に一致したすべての文字列を置換する
- preg_replace() - 正規表現検索および置換を行う
- strtr() - 文字の変換あるいは部分文字列の置換を行う