《PHP編程:php中替換字符串函數(shù)strtr()和str_repalce()的用法與區(qū)別》要點:
本文介紹了PHP編程:php中替換字符串函數(shù)strtr()和str_repalce()的用法與區(qū)別,希望對您有用。如果有疑問,可以聯(lián)系我們。
PHP實戰(zhàn)首先來看看這個php字符串替換函數(shù) strtr()的兩種用法:
PHP實戰(zhàn)strtr(string,from,to)
或者strtr(string,array)
首先針對strtr函數(shù)第一種方式:
PHP實戰(zhàn)我們看看下面的舉例:
PHP實戰(zhàn)
<?php
echo strtr("I Love you","Lo","lO");
?>
PHP實戰(zhàn)得到的結(jié)果是: I lOve yOu
PHP實戰(zhàn)這個結(jié)果提醒我們:
PHP實戰(zhàn)1.strtr它是區(qū)分大小寫的
PHP實戰(zhàn)2.strtr的替換是很特殊的,你注意看后面那個yOu,中間的O被替換的,這顯然不是我們的本意.
PHP實戰(zhàn)再舉一個特殊例子,說明這個php的sttr函數(shù)的怪異
PHP實戰(zhàn)
<?php
echo strtr("I Love you","Love","");
?>
PHP實戰(zhàn)結(jié)果是: I Love you
PHP實戰(zhàn)什么也不會改變,所以strtr需要注意的是:
PHP實戰(zhàn)3.不能被替換為空,也就是末位那個參數(shù)不能是空字符串,當(dāng)然空格是可以的.
PHP實戰(zhàn)再次舉例strtr函數(shù)的另一種情況:
PHP實戰(zhàn)
<?php
echo strtr("I Loves you","Love","lOvEA");
?>
PHP實戰(zhàn)結(jié)果是: I lOvEs yOu
PHP實戰(zhàn)注意看第三個參數(shù)的A,在結(jié)果中并沒有出現(xiàn).
PHP實戰(zhàn)4.我不建議用strtr以少換多.
PHP實戰(zhàn)ok,既然這個strtr函數(shù)挺麻煩為什么還要用呢?
PHP實戰(zhàn)原因是,它的速度很快.據(jù)說,strtr 比 str_replace 快四倍.
PHP實戰(zhàn)5.能用strtr函數(shù)的時候一定要用.
PHP實戰(zhàn)那怎么用才舒服?
PHP實戰(zhàn)這就是它的第二種情況:
PHP實戰(zhàn)
strtr(string,array)
PHP實戰(zhàn)6.strtr符合意愿的使用方法
PHP實戰(zhàn)
<?php
$table_change = array('you'=>'her sister');
echo strtr("I Love you",$table_change);
?>
PHP實戰(zhàn)結(jié)果為: I Love her sister
PHP實戰(zhàn)7.小技巧:你想到替換什么你就往數(shù)組加什么
PHP實戰(zhàn)比如:
PHP實戰(zhàn)
<?php
$table_change = array('you'=>'her sister');
$table_change += array('Love' => 'hate');
echo strtr("I Love you",$table_change);
?>
PHP實戰(zhàn)結(jié)果是: I hate her sister
PHP實戰(zhàn)再次提醒那個Love 寫成love 是行不通的哦.
PHP實戰(zhàn)字符串取代.
PHP實戰(zhàn)語法: string str_replace(string needle, string str, string haystack);
PHP實戰(zhàn)返回值: 字符串
PHP實戰(zhàn)函數(shù)種類: 資料處理
PHP實戰(zhàn)內(nèi)容說明:
PHP實戰(zhàn)本函數(shù)將字符串 str 代入 haystack 字符串中,將所有的 needle 置換成 str.
PHP實戰(zhàn)下例將 %body% 以 black 取代
PHP實戰(zhàn)
<?php
$bodytag = str_replace("%body%", "black", "<body text=%body%>");
echo $bodytag;
?>
PHP實戰(zhàn)格式:
PHP實戰(zhàn)??? [@str_replace("要替換的舊內(nèi)容", "要取代原內(nèi)容的新字符", $被替換內(nèi)容的變量名)]
PHP實戰(zhàn)??? [@str_replace(array('舊1','舊2','舊3'), array('新1','新2','新3'), $被替換內(nèi)容的變量名)]
PHP實戰(zhàn)??? [@str_replace(array('舊1','舊2','舊3'), '新內(nèi)容', $被替換內(nèi)容的變量名)]
PHP實戰(zhàn)實例:
PHP實戰(zhàn)多對一替換:想把內(nèi)容字段里所有的<p></p>標(biāo)簽清除掉,替換成空 [ @str_replace(array('<p>','</p>'), '', $Content)
]
PHP實戰(zhàn)一對一替換:想把內(nèi)容字段里所有的<br>標(biāo)簽換成<p> [ @str_replace('<br>', '<p>', $Content)
]
PHP實戰(zhàn)多對多替換:想把內(nèi)容字段里的<br>換成<br />, 同時<p>換<hr>,把</p>全清除 [ @str_replace(array('<br>', '<p>','</p>')
, array('<br />','<hr>',''), $Content)
]
PHP實戰(zhàn)總結(jié)
PHP實戰(zhàn)以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家學(xué)習(xí)或者使用PHP能有所幫助,如果有疑問大家可以留言交流,謝謝大家對維易PHP的支持.
轉(zhuǎn)載請注明本頁網(wǎng)址:
http://www.snjht.com/jiaocheng/2585.html