在php中替換函數主要有strtr(),str_repalce()這兩個函數,下面這篇文中主要給大家介紹下這兩者之間的區別和用法,文中透過範例程式碼介紹的很詳細,有需要的朋友可以參考借鑒,下面跟著小編一起來學習學習吧。
首先來看看這個php字串替換函數strtr()的兩種用法:
#strtr(string,from,to)
或strtr(string,array)
首先針對strtr函數第一種方式:
#我們來看看下面的範例:
<?php echo strtr("I Love you","Lo","lO"); ?>
得到的結果是: I lOve yOu
這個結果提醒我們:<br/>
1.strtr它是區分大小寫的<br/>
#2.strtr的替換是很特殊的,你注意看後面那個yOu,中間的O被替換的,這顯然不是我們的本意。
再舉一個特殊例子,說明這個php的sttr函數的怪異
#<?php echo strtr("I Love you","Love",""); ?>
結果是: I Love you
什麼也不會改變,所以strtr要注意的是:
3.不能被替換為空,也就是末位那個參數不能是空字串,當然空格是可以的。
再次舉例strtr函數的另一種情況:
<?php echo strtr("I Loves you","Love","lOvEA"); ?>
結果是: I lOvEs yOu
#注意第三個參數的A,在結果中並沒有出現。 <br/>
4.我不建議用strtr以少換多。 <br/>
ok,既然這個strtr函數挺麻煩為什麼還要用呢? <br/>
原因是,它的速度很快。據說,strtr 比 str_replace 快四倍。 <br/>
5.能用strtr函數的時候一定要用。 <br/>
那怎麼用才舒服? <br/>
這就是它的第二種情況:<br/>
strtr(string,array)
##6.strtr符合意願的使用方法
<?php $table_change = array('you'=>'her sister'); echo strtr("I Love you",$table_change); ?>
7.小技巧:你想到要替換什麼你就往陣列加什麼<br/>
例如:<?php $table_change = array('you'=>'her sister'); $table_change += array('Love' => 'hate'); echo strtr("I Love you",$table_change); ?>
<br/>
<br/>
<br/>
再次提醒那個Love 寫成love 是行不通的哦。
字串取代。 <br/>語法:
string str_replace(string needle, string str, string haystack);<br/>
## 傳回值: 字串<br/>
#函數種類: 資料處理內容說明:
#本函數將字串str 代入haystack 字串中,將所有的needle 置換成str。 <br/>下例將%body% 以black 取代
<br/>
#<?php $bodytag = str_replace("%body%", "black", "<body text=%body%>"); echo $bodytag; ?>
[@str_replace("要替換的舊內容", "要取代原內容的新字元", $被替換內容的變數名稱)]
# [@str_replace(array('舊1','舊2','舊3'), array('新1','新2','新3'), $被替換內容的變數名)]
[@str_replace(array('舊1','舊2','舊3'), '新內容', $被替換內容的變數名稱)]
實例:多對一替換:想把內容欄位裡所有的
','
'), '', $Content)]
一對一替換:想把內容字段裡所有的
標籤換成
[
@str_replace('
', '
', $Content)
]#多對多替換:想把內容欄位裡的換
@str_replace(array ('
', '
','
') , array('相關推薦:PHP取得音訊檔案時長的方法
###PHP實作限制IP存取的方法_###php###技巧############ ################
以上是php中替換字串函數strtr()和str_repalce()的用法與區別的詳細內容。更多資訊請關注PHP中文網其他相關文章!