PHPで文字列を置換するときはstr_replace()を使用します。
文字列を検索し置換する
str_replace()の記述方法は以下のとおりです。
1 |
str_replace(検索文字列, 置換文字列, 対象文字列 [, 置換した回数を格納する変数]) |
返り値には置換後の文字列が返されます。第4引数は省略できますが、変数を渡すことで置換した回数が渡した変数に格納されます。
たとえば「MovaleType」という文字列があったら「WordPress」に変換する場合は以下のようなコードなります。
1 2 3 4 |
<?php $str = "MovableType is written in PHP"; echo str_replace("MovableType", "WordPress", $str); ?> |
上のプログラムを実行すると「MovaleType」が「WordPress」に置換されます。
1 |
WordPress is written in PHP |
配列に格納された文字列を検索し置換する
引数には配列を設定することもできます。また、引数に配列と文字列を混ぜて渡すことも可能です。
1 |
str_replace(検索配列文字列, 置換配列文字列, 対象配列文字列 [, 置換した回数の変数]) |
第3引数に配列を設定すると返り値に置換後の配列が返されます。
以下は配列を引数に渡した場合の例です。
1 2 3 4 5 6 7 |
<?php $object_arr = ["PHP", "Python", "Perl", "Prolog"]; $search_arr = ["P", "o"]; $replace_arr = ["A", "B"]; $result_arr = str_replace($search_arr, $replace_arr, $object_arr); print_r($result_arr); ?> |
上のプログラムでは、「P」を「A」に「o」を「B」に置換しています。対象を配列にすると結果は配列で返されます。
1 2 3 4 5 6 7 |
Array ( [0] => AHA [1] => AythBn [2] => Aerl [3] => ArBlBg ) |