PHP str_replace()関数
例
文字列 "Hello world!" 内の文字 "world" を "Peter" に置換します:
<?php
echo str_replace("world","Peter","Hello world!");
?>
echo str_replace("world","Peter","Hello world!");
?>
例を実行 »
定義と用法
str_replace() 関数は、文字列内の一部の文字を置換します(大文字と小文字を区別します)。
この関数は次の規則に従う必要があります:
- 検索文字列が配列の場合、配列を返します。
- 検索文字列が配列の場合、配列の各要素に対して検索と置換を行います。
- ある配列に対して検索と置換を行う場合に、置換を実行する要素が検索された要素の数より少ないとき、余分な要素は空文字列で置換されます。
- 配列に対して検索を行い、1つの文字列だけを置換する場合、その置換文字列は検索されたすべての値に適用されます。
注:この関数は大文字と小文字を区別します。使用してください。str_ireplace()関数は大文字と小文字を区別しない検索を実行します。
注:この関数はバイナリセーフです。
構文
str_replace(find,replace,string,count)
| パラメータ | 説明 |
|---|---|
| find | 必須。検索する値を指定します。 |
| replace | 必須。置換を指定します。find内の値の値。 |
| string | 必須。検索対象の文字列を指定します。 |
| count | 省略可能。置換回数をカウントする変数。 |
技術詳細
| 戻り値: | 置換値を含む文字列または配列を返します。 |
|---|---|
| PHP バージョン: | 4+ |
| 変更ログ: | PHP 5.0 で、新たに追加されましたcountパラメータ。 PHP 4.3.3 より前では、この関数のfindとreplaceパラメータがすべて配列の場合には問題が発生し、空のfindインデックスは、内部ポインタがまだ変更されていないreplace配列上で無視されます。新しいバージョンではこの問題はありません。 PHP 4.0.5 以降、ほとんどのパラメータは配列にすることができます。 |
その他の例
例 1
配列と count 変数を備えた str_replace() 関数を使用します:
<?php
$arr = array("blue","red","green","yellow");
print_r(str_replace("red","pink",$arr,$i));
echo "Replacements: $i";
?>
$arr = array("blue","red","green","yellow");
print_r(str_replace("red","pink",$arr,$i));
echo "Replacements: $i";
?>
例を実行 »
例 2
置換する要素が検索された要素より少ない str_replace() 関数を使用します:
<?php
$find = array("Hello","world");
$replace = array("B");
$arr = array("Hello","world","!");
print_r(str_replace($find,$replace,$arr));
?>
$find = array("Hello","world");
$replace = array("B");
$arr = array("Hello","world","!");
print_r(str_replace($find,$replace,$arr));
?>
例を実行 »
PHP String リファレンスマニュアル その他の拡張