strtr(string,from,to):
成都創(chuàng)新互聯(lián)公司是一家專業(yè)提供江陰企業(yè)網(wǎng)站建設(shè),專注與網(wǎng)站設(shè)計、成都做網(wǎng)站、HTML5建站、小程序制作等業(yè)務(wù)。10年已為江陰眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)的建站公司優(yōu)惠進(jìn)行中。
逐個字符開始替換,以from跟to中長度較較短的一個為準(zhǔn),例如:
strtr("aidenliu","ai","b") 只替換原始字符串中出現(xiàn)的a 輸出:bidenliu
strtr("aidenliu","a","bc") 只替換原始字符串中出現(xiàn)的a 輸出:bidenliu
此函數(shù)是大小寫敏感的,具如果發(fā)生多次替換,每一次替換的藍(lán)本都是最原始的那個字符串,而不是在前一次替換的基礎(chǔ)上替換,如
strtr("aidenliu","aA","A@") 會輸出Aidenliu 而不是@idenliu
strtr(string,array):
array 為關(guān)聯(lián)數(shù)組,用關(guān)聯(lián)數(shù)組中的值替換原始字符串中出現(xiàn)的對應(yīng)的鍵,如果發(fā)生多次替換,每次替換的對像都是最原始的那個字符串,而不是在一次替換的基礎(chǔ)上替換(此點與str_replace不同)
strtr(string,from,to)與 strtr(string,array):
strtr(string,from,to)是逐個字符替換,而strtr(string,array)是字符串替換
strtr("aidenliu","ai","") 不發(fā)生替換(第二個參數(shù)為零長度字符串)
strtr("aidenliu",array("ai"=>"")) 發(fā)生替換
參考如下文章:
php中替換函數(shù)主要有strtr(),str_repalce()這兩個函數(shù),但你們都知道他們這兩個函數(shù)的區(qū)別和用法嗎?
先來看看這個php字符串替換函數(shù) strtr()的兩種用法:
strtr(string,from,to)
或者strtr(string,array)
首先針對strtr函數(shù)第一種方式:
我們看看下面的舉例:
得到的結(jié)果是:
I lOve yOu
這個結(jié)果提醒我們:
1.strtr它是區(qū)分大小寫的
2.strtr的替換是很特殊的,你注意看后面那個yOu,中間的O被替換的,這顯然不是我們的本意。
再舉一個特殊例子,說明這個php的sttr函數(shù)的怪異
結(jié)果是:
I Love you
什么也不會改變,所以strtr需要注意的是:
3.不能被替換為空,也就是末位那個參數(shù)不能是空字符串,當(dāng)然空格是可以的。
再次舉例strtr函數(shù)的另一種情況:
結(jié)果是:
I lOvEs yOu
注意看第三個參數(shù)的A,在結(jié)果中并沒有出現(xiàn)。
4.我不建議用strtr以少換多。
ok,既然這個strtr函數(shù)挺麻煩為什么還要用呢?
原因是,它的速度很快。據(jù)說,strtr 比 str_replace 快四倍。
5.能用strtr函數(shù)的時候一定要用。
那怎么用才舒服?
這就是它的第二種情況:
strtr(string,array)
6.strtr符合意愿的使用方法
結(jié)果為:
I Love her sister
7.小技巧:你想到替換什么你就往數(shù)組加什么
比如:
結(jié)果是:
I hate her sister
再次提醒那個Love 寫成love 是行不通的哦。
字符串取代。
語法: string str_replace(string needle, string str, string haystack);
返回值: 字符串
函數(shù)種類: 資料處理
內(nèi)容說明
本函數(shù)將字符串 str 代入 haystack 字符串中,將所有的 needle 置換成 str。mlevine@adtraq.com (11-Apr-1999) 指出在 PHP 3.0.7 版,本函數(shù)有些 bug,而 nadeem@bleh.org (05-Jun-1999) 補(bǔ)充在 PHP 3.0.8 版本函數(shù)就回復(fù)正常了。
使用范例
下例將 %body% 以 black 取代
格式:
[@str_replace("要替換的舊內(nèi)容", "要取代原內(nèi)容的新字符", $被替換內(nèi)容的變量名)]
[@str_replace(array('舊1','舊2','舊3'), array('新1','新2','新3'), $被替換內(nèi)容的變量名)]
[@str_replace(array('舊1','舊2','舊3'), '新內(nèi)容', $被替換內(nèi)容的變量名)]
實例:
多對一替換:想把內(nèi)容字段里所有的
標(biāo)簽清除掉,替換成空 [@str_replace(array('
','
'), '', $Content)]
一對一替換:想把內(nèi)容字段里所有的
標(biāo)簽換成
[@str_replace('
', '
', $Content)]
多對多替換:想把內(nèi)容字段里的
換成
, 同時
換
,把
全清除 [@str_replace(array('
', '
','
'), array('
','
',''), $Content)]
網(wǎng)站名稱:PHP替換字符串函數(shù)strtr()和str_replace()
路徑分享:http://www.rwnh.cn/article22/jscijc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站設(shè)計公司、微信小程序、商城網(wǎng)站、軟件開發(fā)、微信公眾號、網(wǎng)站導(dǎo)航
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)