成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

php rtrim() 格式化中文問題

sunny5541 / 698人閱讀

摘要:先看以下代碼互聯(lián)網(wǎng)產(chǎn)品我們以為會(huì)得到結(jié)果互聯(lián)網(wǎng)產(chǎn)品但實(shí)際上獲得的是互聯(lián)網(wǎng)產(chǎn)為什么呢其實(shí)這是編碼引起的問題這個(gè)函數(shù)在處理字符時(shí)是按照編碼來處理先看一下互聯(lián)網(wǎng)產(chǎn)品的編碼互聯(lián)網(wǎng)產(chǎn)品可以看出中文品的編碼是而中文符號(hào)的編碼是因此在處理時(shí)會(huì)一并將品

先看以下代碼

var_dump(rtrim("互聯(lián)網(wǎng)產(chǎn)品、", "、"));

我們以為會(huì)得到結(jié)果 "互聯(lián)網(wǎng)產(chǎn)品", 但實(shí)際上獲得的是 ""互聯(lián)網(wǎng)產(chǎn)??"

為什么呢, 其實(shí)這是編碼引起的問題.

rtrim() 這個(gè)函數(shù)在處理字符時(shí)是按照ascii編碼來處理, 先看一下 "互聯(lián)網(wǎng)產(chǎn)品、" 的編碼:

$str = "互聯(lián)網(wǎng)產(chǎn)品、";
for ($i = 0; $i < strlen($str); $i++) {
    echo decbin(ord($str[$i])) . PHP_EOL;
}

/* Output
11100100
10111010
10010010
11101000
10000001
10010100
11100111
10111101
10010001
11100100
10111010
10100111
11100101
10010011
10000001
11100011
10000000
10000001
*/

可以看出中文"品"的utf-8編碼是 "11100101 10010011 10000001", 而中文符號(hào) "、" 的utf-8編碼是 "11100011 10000000 10000001"

因此 rtrim() 在處理時(shí)會(huì)一并將 "品" 截掉最后一個(gè)字節(jié), 剩下 "11100101 10010011", 從而引起亂碼的問題.

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/31414.html

相關(guān)文章

  • PHP字符串操作

    摘要:字符串變量被解析。很顯然,代表,代表獲取字符串的長(zhǎng)度對(duì)于英文數(shù)字字母。你好,截取字符串對(duì)于純英文字符,可以使用對(duì)于中文字符,可以使用例如你好,世界查找字符串查找字符串,有內(nèi)置函數(shù)代表,應(yīng)該代表。當(dāng)然也有函數(shù)用于處理其他編碼的字符串。 1. 單引號(hào)和雙引號(hào) PHP可以在單引號(hào)或者雙引號(hào)中包含字符串。但是單引號(hào)和雙引號(hào)有所區(qū)別。 單引號(hào)包含的內(nèi)容會(huì)被認(rèn)為是普通字符串 雙引號(hào)中允許包含字符...

    taoszu 評(píng)論0 收藏0
  • 【渣渣程序員踩過的坑】PHP的hash_hmac簽名加密,PHP迷一樣的base64_encode

    摘要:如何獲取受支持的算法清單,請(qǐng)參見。要進(jìn)行哈希運(yùn)算的消息。使用生成信息摘要時(shí)所使用的密鑰。設(shè)置為輸出原始二進(jìn)制數(shù)據(jù),設(shè)置為輸出小寫進(jìn)制字符串。 介紹一下問題的背景: 本人一枚小小PHPer,有一天公司的Java找到我,讓我?guī)兔懸粋€(gè)接口的Demo,心想:‘最喜歡寫接口了,來來來來!’,于是Java就帶著Java版Demo來了,大概看了一遍,具體涉及以下幾點(diǎn):(不想了解的看最后一部分,就好...

    Rocture 評(píng)論0 收藏0
  • 【渣渣程序員踩過的坑】PHP的hash_hmac簽名加密,PHP迷一樣的base64_encode

    摘要:如何獲取受支持的算法清單,請(qǐng)參見。要進(jìn)行哈希運(yùn)算的消息。使用生成信息摘要時(shí)所使用的密鑰。設(shè)置為輸出原始二進(jìn)制數(shù)據(jù),設(shè)置為輸出小寫進(jìn)制字符串。 介紹一下問題的背景: 本人一枚小小PHPer,有一天公司的Java找到我,讓我?guī)兔懸粋€(gè)接口的Demo,心想:‘最喜歡寫接口了,來來來來!’,于是Java就帶著Java版Demo來了,大概看了一遍,具體涉及以下幾點(diǎn):(不想了解的看最后一部分,就好...

    henry14 評(píng)論0 收藏0
  • 【日常手記】之Laravel5.3

    摘要:個(gè)人網(wǎng)站最近剛寫了一個(gè)手機(jī)在線播放的電影站使用日常手記更新使用的的查詢作用域的本地作用域去自定義可復(fù)用的約束集合,方便鏈?zhǔn)秸{(diào)用什么是本地查詢作用域本地作用域允許我們定義通用的約束集合以便在應(yīng)用中復(fù)用。 關(guān)于作者 程序開發(fā)人員,不拘泥于語(yǔ)言與技術(shù),目前主要從事PHP和前端開發(fā),使用Laravel和VueJs,App端使用Apicloud混合式開發(fā)。合適和夠用是最完美的追求。 個(gè)人網(wǎng)站:...

    kidsamong 評(píng)論0 收藏0
  • [PHP源碼閱讀]trim、rtrim、ltrim函數(shù)

    摘要:系列函數(shù)是用于去除字符串中首尾的空格或其他字符。此處要注意,左右兩邊是一對(duì)合法的范圍值,如果傳遞的是非法的值會(huì)報(bào)錯(cuò)。本文主要對(duì)函數(shù)進(jìn)行分析,和函數(shù)跟的類似。更多源碼文章源碼閱讀函數(shù)性能為王從源碼剖析和源碼閱讀和函數(shù)源碼閱讀和函數(shù) trim系列函數(shù)是用于去除字符串中首尾的空格或其他字符。ltrim函數(shù)只去除掉字符串首部的字符,rtrim函數(shù)只去除字符串尾部的字符。 我在github有對(duì)P...

    時(shí)飛 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

閱讀需要支付1元查看
<