スポンサー

【PHP】文字列の中身を置き換えする方法

特定の文字列を置き換え

例えば、「あせた、いい天気」を「明日、いい天気」に変更したいときなどありますよね。
そのようなときにstr_replaceという関数が役立ちます。
これが使用した例です。
$sample = 'あせた、いい天気。あせた雨降らないといいな。';
   
//指定した文字列が一致したらすべて置き換える 
$replace = str_replace('あせた', '明日', $sample);
   
echo $replace;
これを実行すると結果は「明日、いい天気。明日雨降らないといいな。」になります。

また、この関数は配列も置き換えることが可能なため、様々な場面で利用できるでしょう。

大文字小文字区別なしで置き換え

先ほどのstr_replaceと似ていますが、str_ireplaceを利用します。

使い方は同じなのでこの記事では解説しませんが、覚えておきましょう。

マルチバイト文字列の置き換え

mb_ereb_replaceという関数を利用することでマルチバイト文字列の置き換えができます。

使い方は最初の関数と同様です。

正規表現で置き換え

正規表現で置き換えするには、preg_replace関数を利用します。

使い方はこのような感じです。
$str = '今年は2041年です。';
 
$str_s = preg_replace('/(今年は)2041/', '$1 2020', $str);
 
echo $str_s;
結果は「今年は 2020年です」となります。

2019/12/10追記

また、正規表現のpreg_replaceより、str_replaceのほうが実行速度が速いです。

正規表現を利用するとき、しないときを考えて使い分けるのがいいでしょう。

広告

このブログの人気の投稿

【CSS】アニメーション等動作がカクカクする時の対処法

超軽量DOM操作ライブラリdom_sen.js var1

超軽量DOM操作ライブラリdom_sen.js var2