PHP関数 str_replace( ) によるテキスト内容の一括置換

6,752 0

昨日、WordPressテーマ情報を取得するAPIを書いていたとき、style.css 内の英語の内容を置き換えるため、文字列置換に関する str_replace() 関数を使いました。最初は、連続して10個ほどの str_replace() 関数を使ってようやく置き換えました。

その後、ある達人に str_replace() 関数の引数は配列に設定でき、順番に一括置換できると教えてもらいました。そこで試してみたところ、本当に str_replace() 関数1つでできました。以下では、私の経験を紹介します。

str_replace()

ここでは主に str_replace() 関数の4つのケースについて説明します。

置換される値にのみ配列を使用する

PHP
<?php
echo str_replace(array('w','m'),'x','www.ikxin.com');
?>

出力: xxx.ikxin.cox

関数は配列内の各文字列を順番に置換し、置換後の文字列を返していることが分かります。

置換値にのみ配列を使用する

PHP
<?php
echo str_replace('i',array('w','m'),"www.ikxin.com");
?>

出力: www.ArraykxArrayn.com

この置換は比較的興味深いものです。2番目の引数にのみ配列を使用すると、関数はそれを文字列 Array として扱い、置換されるすべての値を Array に置き換えます。

置換対象の引数にのみ配列を使用する

PHP
<?php
echo str_replace('w','n',array('www.ikxin.com','www.baidu.com'));
?>

この文の実行結果は配列を返します。つまり、渡された2つの文字列をそれぞれ置換した結果です。

置換値と置換される値に配列を使用する

PHP
<?php
echo str_replace(array("m","w"),array("h","n"),"www.ikxin.com");
?>

出力: nnn.ikxin.coh

最初の2つの引数に配列を使用すると、関数は配列の各要素の文字列を置換します。つまり、置換される値の1番目の項目は置換値の1番目の項目に置き換えられ、以下同様に処理されます。

コメント

(0)

まだコメントはありません

コメントを投稿

憂いを忘れる一枚

「憂いを忘れる一枚」は、技術探究と日々の暮らしをテーマにした個人サイトです。Web 開発、バックエンド、DevOps の実践を記録し、ソフトウェアツールやデジタル体験、コードの外で得た見聞と思索を共有します。

© 2026 憂いを忘れる一枚. 無断転載を禁じます.