国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > PHP > 正文

PHP中strtr字符串替換用法詳解

2024-05-04 23:28:07
字體:
來源:轉載
供稿:網友
這篇文章主要介紹了PHP中strtr字符串替換用法,以大量實例詳細解讀了strtr字符串替換的用法與技巧,并與str_replace做了對比以加深理解,需要的朋友可以參考下
 
 

本文實例講述了PHP中strtr字符串替換用法。分享給大家供大家參考。具體分析如下:

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

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

復制代碼代碼如下:
<?php 
echo strtr("I Love you","Lo","lO"); 
?>

得到的結果是:
1 I lOve yOu 
這個結果提醒我們,1.strtr它是區分大小寫的,2.strtr的替換是很特殊的,你注意看后面那個yOu,中間的O被替換的,這顯然不是我們的本意,再舉一個特殊例子,說明這個php sttr函數的怪異,代碼如下:
復制代碼代碼如下:
<?php 
echo strtr("I Love you","Love",""); 
?>

結果是:
I Love you 
什么也不會改變,所以strtr需要注意的是:不能被替換為空,也就是末位那個參數不能是空字符串,當然空格是可以的,再次舉例strtr函數的另一種情況,代碼如下:
復制代碼代碼如下:
<?php 
echo strtr("I Loves you","Love","lOvEA"); 
?>

運行結果是 
1 I lOvEs yOu 
注意看第三個參數的A,在結果中并沒有出現.

 

我不建議用strtr以少換多,既然這個strtr函數挺麻煩為什么還要用呢?原因是,它的速度很快,據說,strtr 比 str_replace 快四倍,所以能用strtr函數的時候一定要用,那怎么用才舒服?這就是它的第二種情況:strtr(string,array)

strtr符合意愿的使用方法,代碼如下:

復制代碼代碼如下:
<?php 
$table_change = array('you'=>'her sister'); 
echo strtr("I Love you",$table_change); 
?>

結果為: 
I Love her sister 
小技巧:你想到替換什么你就往數組加什么,比如代碼如下:
復制代碼代碼如下:
<?php 
$table_change = array('you'=>'her sister'); 
$table_change += array('Love' => 'hate'); 
echo strtr("I Love you",$table_change); 
?>

結果是 
I hate her sister 
再次提醒那個Love 寫成love 是行不通的,亂七八糟說了一通,其實關于strtr最想說的就是這個后面的用法了簡單方便,貌似后面的用法也忽略掉了前后字符長度不同的問題,以上php strtr函數實驗,PHP5.2 測試通過,代碼如下:
復制代碼代碼如下:
<?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! 
?>

 

希望本文所述對大家的PHP程序設計有所幫助。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 南靖县| 大余县| 伊金霍洛旗| 竹溪县| 海口市| 开封县| 碌曲县| 将乐县| 滦平县| 宁海县| 大足县| 宕昌县| 棋牌| 扎鲁特旗| 莲花县| 鹤峰县| 墨江| 晴隆县| 安龙县| 从江县| 安塞县| 平舆县| 城固县| 宁河县| 钦州市| 顺义区| 霸州市| 新邵县| 平湖市| 乐清市| 正定县| 维西| 达州市| 道真| 观塘区| 蒲城县| 亳州市| 涟源市| 洛南县| 三亚市| 上犹县|