ホームページ  >  記事  >  バックエンド開発  >  php_PHP チュートリアルの str_replace の詳細な説明

php_PHP チュートリアルの str_replace の詳細な説明

WBOY
WBOYオリジナル
2016-07-13 10:22:52961ブラウズ

php之str_replace详解

str_replace

(PHP 4、PHP 5)

str_replace — 出現する検索文字列をすべて置換文字列に置き換えます

説明

混合 str_replace (混合 $search , mixed $replace , mixed $subject [, int &$count ) )

この関数は、出現するすべての search in subject を置き換えた文字列または配列を返します。 指定されたreplace値を使用します。

複雑な置換ルール (正規表現など) が必要ない場合は、preg_replace() の代わりに常にこの関数を使用する必要があります。

パラメータ

もし

search and replaceが 配列の場合、str_replace() は各配列から値を取得し、それらを使用して subject の検索と置換を行います。 replace has fewer values than search の値が search よりも少ない場合、 その後、空の文字列が残りの置換値に使用されます。 replaceがあれば 配列であり、 search が文字列である場合、この置換文字列は次のようになります。

のすべての値に使用されます。逆は意味が無いでしょうが、 でも

search or replace場合は

または

配列の場合、その要素は最初から最後まで処理されます。

search

検索対象の値。ニードルとも呼ばれます。配列を使用して複数の針を指定できます。replace

search

見つかった
値を置き換える置換値。 配列を使用して複数の置換を指定できます。subject

検索および置換される文字列または配列。干し草の山とも呼ばれます。subject subject

があれば 配列の場合、
のすべてのエントリに対して検索と置換が実行されます。 戻り値も配列ですcount

合格した場合、これは実行された置換の数に設定されます。

戻り値

この関数は、置換された値を含む文字列または配列を返します。

変更履歴

説明パラメータ 追加されました の両方のパラメーターとして配列を使用する場合にバグが存在しました。 そのため、空の インデックスは、次のステップに進むことなくスキップされていました。 配列の内部ポインター。これはPHPで修正されました 4.3.3 では、このバグに依存するスクリプトは、元の動作を模倣するために、この関数を呼び出す前に空の検索値を削除する必要があります。4.0.5ほとんどのパラメータを配列にできるようになりました。
バージョン
5.0.0count
4.3.3search and replace searchこの関数の動作が変更されました。古いバージョンでは、replace
🎜 🎜 🎜

例 #1 基本的な str_replace() の例

<?php <br> // 提供するもの: <br> $bodytag = str_replace("%body%", "黒", "");<br> <br> // 提供: Hll Wrld f PHP<br> $vowels = array("a", "e", "i", "o", "u", "A", "E", "I", "O", "U");<br> $onlyconsonants = str_replace($vowels, "", "PHP の Hello World");<br> <br> // 提供: ピザ、ビール、アイスクリームを毎日食べるべきです<br> $phrase = "果物、野菜、繊維質を毎日食べる必要があります。";<br> $healthy = array("果物", "野菜", "食物繊維");<br> $yummy = array("ピザ", "ビール", "アイスクリーム");<br> <br> $newphrase = str_replace($healthy, $yummy, $phrase);<br> <br> // 提供: 2<br> $str = str_replace("ll", "", "いいですね、モリーさん!", $count);<br> エコー $count;<br> ?>

例 #2 str_replace() の潜在的な問題の例

<?php <br> // 置換の順序<br> $str = "行 1n 行 2r 行 3rn 行 4n";<br> $order = array("rn", "n", "r");<br> $replace = '<br>';<br> <br> // rn を最初に処理して、2 回変換されないようにします。<br> $newstr = str_replace($order, $replace, $str);<br> <br> // A が B に置き換えられ、次に B が C に置き換えられるため、F が出力されます...<br> // 左から右への置換のため、最後に E が F に置き換えられます。<br> $search = array('A', 'B', 'C', 'D', 'E');<br> $replace = array('B', 'C', 'D', 'E', 'F');<br> $subject = 'A';<br> echo str_replace($search, $replace, $subject);<br> <br> // 出力: apearpearle pear<br> // 上記と同じ理由です<br> $letters = array('a', 'p');<br> $fruit = array('リンゴ', '梨');<br> $text = 'a p';<br> $output = str_replace($letters, $fruit, $text);<br> エコー $output;<br> ?>

メモ

注: この関数はバイナリセーフです。

www.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/845437.html技術記事 php之str_replace详解 str_replace (PHP 4, PHP 5) str_replace — 出現する検索文字列をすべて置換文字列で置換します。
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。