str_replace

str_replace

str_replace() 函數替換字元串中的一些字元(區分大小寫)。

定義和用法


該函數必須遵循下列規則:
• 如果搜索的字元串是一個數組,那麼它將返回一個數組。
• 如果搜索的字元串是一個數組,那麼它將對數組中的每個元素進行查找和替換。
• 如果同時需要對某個數組進行查找和替換,並且需要執行替換的元素少於查找到的元素的數量,那麼多餘的元素將用空字元串進行替換。
• 如果是對一個數組進行查找,但只對一個字元串進行替換,那麼替代字元串將對所有查找到的值起作用。
註釋:該函數是區分大小寫的。請使用 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 起,大多數參數可以是一個數組。

內容說明

本函數將字元串 str 代入 haystack 字元串中,將所有的 needle 置換成 str。[email protected] (11-Apr-1999) 指出在 PHP 3.0.7 版
本函數有些 bug,而 [email protected] (05-Jun-1999) 補充在 PHP 3.0.8 版本函數就回復正常了。

使用範例

下例將 %body% 以 black 取代
$bodytag = str_replace("%body%", "black", "");
echo $bodytag;
?>
參考
ereg_replace()
提示和註釋
註釋:該函數對大小寫敏感。請使用 str_ireplace() 執行對大小寫不敏感的搜索。
註釋:該函數是二進位安全的。
例子
例子 1
echo str_replace("world","John","Hello world!");
?>輸出:
Hello John!例子 2
在本例中,我們將演示帶有數組和 count 變數的 str_replace() 函數:
$arr = array("blue","red","green","yellow");
print_r(str_replace("red","pink",$arr,$i));
echo "Replacements: $i";
?>輸出:
Array
(
[0] => blue
[1] => pink
[2] => green
[3] => yellow
)
Replacements: 1例子 3
$find = array("Hello","world");
$replace = array("B");
$arr = array("Hello","world","!");
print_r(str_replace($find,$replace,$arr));
?>輸出:
Array
(
[0] => B
[1] =>
[2] => !
)
  • 目錄