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 取代

<?php

$bodytag = str_replace("%body%", "black", "<body text=%body%>");

echo $bodytag;

?>

參考

ereg_replace()

提示和注釋

注釋:該函式對大小寫敏感。請使用 str_ireplace() 執行對大小寫不敏感的搜尋。

注釋:該函式是二進制安全的。

例子

例子 1

<?php

echo str_replace("world","John","Hello world!");

?>輸出:

Hello John!例子 2

在本例中,我們將演示帶有數組和 count 變數的 str_replace() 函式:

<?php

$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

<?php

$find = array("Hello","world");

$replace = array("B");

$arr = array("Hello","world","!");

print_r(str_replace($find,$replace,$arr));

?>輸出:

Array

(

[0] => B

[1] =>

[2] => !

)

相關詞條

熱門詞條

聯絡我們