- 相關(guān)推薦
php字符串替換函數(shù)str-replace速度比preg-replace快
在選擇函數(shù)的時候,我們都會優(yōu)先選擇執(zhí)行速度快的函數(shù),下面是小編整理的php字符串替換函數(shù)str_replace與preg_replace的比較,希望對大家有用,更多消息請關(guān)注應(yīng)屆畢業(yè)生網(wǎng)。
php里字符串替換的函數(shù),有str_replace()、str_ireplace()、substr_replace()、preg_replace()、strtr()等幾個,程序員在寫程序的時候,往往會根據(jù)自己的習(xí)慣以及實(shí)際情況選用其中一個或多個。這幾個函數(shù)雖然都有字符串替換的功能,但它們無論從語法到作用,還是速度和效率上都有所不同,所以并非在任何場合都可以使用它們。
str_replace()與preg_replace()的區(qū)別
在字符串替換的函數(shù)里,str_replace()的使用率是最高的,它的用法也比較簡單,而preg_replace()的使用率相對來說比較低,因?yàn)樗枰愣脤懻齽t表達(dá)式,而正則表達(dá)式有時候并不容易寫。
str_replace()與preg_replace()的用法場合是不同的,str_replace被替換(查找)的內(nèi)容是固定的、確定的,當(dāng)然可以使用變量,但是變量也表示固定的、確定的內(nèi)容,比如可以完成把所有的\n替換為
等場合。而preg_replace被替換(查找)的內(nèi)容是用規(guī)則來描述的,比如可以把所有的<和>之間的內(nèi)容(HTML代碼)替換掉。當(dāng)然preg_replace也可以用來替換固定內(nèi)容。
str_replace速度要比preg_replace快
兩者比較,執(zhí)行效率方面誰更好呢?這就涉及到速度問題了。有人測試發(fā)現(xiàn),str_replace速度要比preg_replace快一些,但好像沒有某些人說的快4倍那么多。10w次的兩個詞替換結(jié)果表明:str_replacece 耗時0.38 sec,preg_replace 耗時0.97sec。
str_replace()與str_ireplace()的區(qū)別
str_replace()與str_ireplace()的用法是相同的,它們的區(qū)別僅僅是str_replace()對大小寫敏感,而str_ireplace()不區(qū)分大小寫。
str_replace()與strtr() 誰的速度更快?
str_replace()與strtr()這兩者的執(zhí)行效率問題,許多人說法不一,有人說strtr()比str_replace()速度快,但有人經(jīng)過實(shí)例證明了str_replace()比strtr()速度快一些。
某網(wǎng)友測試strtr()在strtr(string,array)用法的時候,它比str_replace更慢些。10w次的兩個詞替換結(jié)果表明:str_replacece()耗時0.38 sec,而strtr() 耗時0.52sec。
php程序里,有很多功能是可以用不同的函數(shù)來實(shí)現(xiàn)的,除了上述幾個之外,可能大家也未曾注意過,比如很久之前就分享過的一篇文章:
php判斷字符串長度isset()速度比strlen()更快
所以在我們選擇使用什么函數(shù)的時候,我們最好知道一下那些函數(shù)的執(zhí)行效率如何,這樣才能寫出性能更出色的程序。
【php字符串替換函數(shù)str-replace速度比preg-replace】相關(guān)文章:
PHP的字符串函數(shù)10-06
php的字符串常用函數(shù)06-15
php字符串截取函數(shù)06-10
PHP字符串函數(shù)大匯總05-25
解讀php字符串截取函數(shù)用法09-13
php字符串函數(shù)學(xué)習(xí)之substr08-30