php strtr與str_replace區別比較
函數都是具有替換字符功能的。但是strtr比str_replace性能上要塊4倍。具體情況請
看如下分解:
首先是strtr函數:
實例1:當
以下為引用的內容:
<?php
//這個時候輸出的為baicai而不是bai123cai,因為str("pao")<strlen("bai123")
echo strtr("paocai!","pao","bai123");
?>
實例2:當被替換的值長度小於被替換目標的時候
以下為引用的內容:
<?php
//這個時候輸出的為laocai而不是lacai,因為str("pao")>strlen("la")
echo strtr("paocai!","pao","la");
?>
實例3:支持數組替換
以下為引用的內容:
<?php
$Arr=array('ao'=>'oa','ai'=>'ia');
echo strtr("paocai!",$Arr); //這個時候輸出的為poacia
?>
其次是str_replace:
以下為引用的內容:
<?php
echo str_replace("you","paocai","I love you!"); //會輸出I love paocai!
?>
總結:strtr他是跟字符長度有關系的,但是str_replace就沒有關系,估計在運行步驟
的時候會讀取字符串長度所以才會比strtr慢很多。