日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
如何解決PHP+trim亂碼問題

本文操作環(huán)境:Windows7系統(tǒng),php7.4版,Dell G3電腦。

創(chuàng)新互聯(lián)公司長(zhǎng)期為超過千家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對(duì)不同對(duì)象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺(tái),與合作伙伴共同營(yíng)造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為新寧企業(yè)提供專業(yè)的網(wǎng)站設(shè)計(jì)、做網(wǎng)站新寧網(wǎng)站改版等技術(shù)服務(wù)。擁有十載豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開發(fā)。

如何解決PHP+trim亂碼問題?

PHP的Trim截取亂碼

一直使用Trim過濾首尾兩端的字符串,關(guān)于Trim的官方描述:

trim — 去除字符串首尾處的空白字符(或者其他字符)

今天發(fā)現(xiàn)一個(gè)很奇怪的問題, 代碼如下:


猜下這個(gè)會(huì)返回什么?“研發(fā)、產(chǎn)品”?NO,這個(gè)居然很奇怪的返回了“研發(fā)、產(chǎn)??”。

難道是我的打開方式不對(duì),怎么會(huì)返回亂碼呢。

經(jīng)過一番測(cè)試,發(fā)現(xiàn)一個(gè)很有趣的問題。


原本以為這個(gè)會(huì)返回acabb的,但是居然只返回了c。這就是對(duì)trim函數(shù)的誤解了。

其實(shí)這個(gè)在官方說明文檔的Example是有的,只是我沒注意看而已。

trim會(huì)循環(huán)去掉字符串首位存在的字符。如上面的例子,則執(zhí)行過程如下:

字符串a(chǎn)bacabb會(huì)從下標(biāo)0開始循環(huán),如果存在ab中的字符就去掉,一直到?jīng)]有就停止循環(huán)。

所以執(zhí)行為:

  • 循環(huán)a存在字符串a(chǎn)b中,去掉,剩下bacabb

  • 循環(huán)b存在字符串a(chǎn)b中,去掉,剩下acabb

  • 循環(huán)a存在字符串a(chǎn)b中,去掉,剩下cabb

  • 循環(huán)c不存在字符串a(chǎn)b中,停止循環(huán),所以去掉首字符就剩下:cabb。

但是trim是過濾首尾字符,所以還會(huì)從末尾循環(huán)去掉。

  • 循環(huán)b存在字符串a(chǎn)b中,去掉,剩下cab,

  • 循環(huán)b存在字符串a(chǎn)b中,去掉,剩下ca,

  • 循環(huán)a存在字符串a(chǎn)b中,去掉,剩下c,

  • 循環(huán)c不存在字符串a(chǎn)b中,停止循環(huán),所以去掉末端字符就剩下:c。

所以整個(gè)結(jié)束后,abacabb就剩下了c了??吹竭@里對(duì)trim函數(shù)有所了解了吧。

好了,說回亂碼的問題,為什么會(huì)出現(xiàn)返回亂碼的情況呢。

這是因?yàn)樵赑HP中,字符串函數(shù)默認(rèn)都不是 multibyte-safe 的。如果需要 multibyte-safe 則需要使用mb_系列的函數(shù)。

“、”的十六進(jìn)制碼為0xe3 0x80 0x81,對(duì)于不是 multibyte-safe 的函數(shù)會(huì)把它當(dāng)做三個(gè)字符。

而“品”的十六進(jìn)制碼為0xe5 0x93 0x81。這里最后一個(gè)0x81剛好符合了,被過濾了。所以才會(huì)導(dǎo)致出現(xiàn)亂碼的情況。

ok,問題找到了,trim沒有mb函數(shù),但是我們可以自己封裝一個(gè)。Function mb_trim。

PS:用了trim好久了,但是一直沒有真正了解??垂俜轿臋n還是很重要的。


分享標(biāo)題:如何解決PHP+trim亂碼問題
網(wǎng)頁鏈接:http://www.dlmjj.cn/article/dhcsjoh.html