PHP中strtr 字串替換介紹_PHP教程

來源:互聯網
上載者:User
本文章介紹了關於PHP中strtr 字串替換介紹有需要學習的朋友可詳細的參考本文章。

strtr(string,from,to)
或者strtr(string,array)

首先針對strtr函數第一種方式
我們看看下面的舉例:

代碼如下 複製代碼

echo strtr("I Love you","Lo","lO");
?>

得到的結果是

1 I lOve yOu

這個結果提醒我們
1.strtr它是區分大小寫
2.strtr的替換是很特殊的,你注意看後面那個yOu,中間的O被替換的,這顯然不是我們的本意

再舉一個特殊例子,說明這個php sttr函數的怪異

代碼如下 複製代碼

echo strtr("I Love you","Love","");
?>

結果是

I Love you

什麼也不會改變,所以strtr需要注意的是:
3.不能被替換為空白,也就是末位那個參數不能是Null 字元串,當然空格是可以的。

再次舉例strtr函數的另一種情況

代碼如下 複製代碼

echo strtr("I Loves you","Love","lOvEA");
?>

結果是

1 I lOvEs yOu

注意看第三個參數的A,在結果中並沒有出現
4.我不建議用strtr以少換多

ok,既然這個strtr函數挺麻煩為什麼還要用呢?
原因是,它的速度很快
據說,strtr 比 str_replace 快四倍
所以
5.能用strtr函數的時候一定要用

那怎麼用才舒服?
這就是它的第二種情況
strtr(string,array)
6.strtr符合意願的使用方法

代碼如下 複製代碼
$table_change = array('you'=>'her sister');
echo strtr("I Love you",$table_change);
?>

結果為
I Love her sister

7.小技巧:你想到替換什麼你就往數組加什麼
比如

代碼如下 複製代碼

$table_change = array('you'=>'her sister');
$table_change += array('Love' => 'hate');
echo strtr("I Love you",$table_change);
?>

結果是
I hate her sister

再次提醒那個Love 寫成love 是行不通的哦。

ok,亂七八糟說了一通,其實關於strtr最想說的就是這個後面的用法了
簡單方便。
貌似後面的用法也忽略掉了前後字元長度不同的問題

以上php strtr函數實驗,PHP5.2 測試通過。

代碼如下 複製代碼

//這個時候輸出的為baicai而不是bai123cai,因為str("pao")

echo strtr("paocai!","pao","bai123");

?>


執行個體2:當被替換的值長度小於被替換目標的時候

以下為引用的內容:

代碼如下 複製代碼

//這個時候輸出的為laocai而不是lacai,因為str("pao")>strlen("la")

echo strtr("paocai!","pao","la");

?>


執行個體3:支援數組替換

以下為引用的內容:

代碼如下 複製代碼

$Arr=array('ao'=>'oa','ai'=>'ia');

echo strtr("paocai!",$Arr); //這個時候輸出的為poacia

?>


其次是str_replace:

以下為引用的內容:

代碼如下 複製代碼

echo str_replace("you","paocai","I love you!"); //會輸出I love paocai!

?>


更多詳細內容請查看:http://www.bkjia.com/phper/18/strtr_str_replace.htm


http://www.bkjia.com/PHPjc/445303.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/445303.htmlTechArticle本文章介紹了關於PHP中strtr 字串替換介紹有需要學習的朋友可詳細的參考本文章。 strtr(string,from,to) 或者strtr(string,array) 首先針對strtr函數...

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.