第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

幫忙解釋一下8bit編碼方式?

幫忙解釋一下8bit編碼方式?

PHP
德瑪西亞99 2019-03-17 03:44:19
在yii2框架中看到了php與redis通過socket通信的時候,框架中計算字符串的長度和截取返回的信息都是使用的8bit這種編碼方式: mb_strlen($arg, '8bit') 文檔中沒有關(guān)于該編碼的說明,什么時候該使用這種編碼方式?這種編碼方式對中文編碼不會有問題?
查看完整描述

1 回答

?
智慧大石

TA貢獻(xiàn)1946條經(jīng)驗 獲得超3個贊

PHP支持mbstring.func_overload, 用于解決原生substr無法有效應(yīng)對多字節(jié)編碼字符串問題

mbstring
支持一個“函數(shù)重載”功能,將對應(yīng)的多字節(jié)版本重載到標(biāo)準(zhǔn)字符處理函數(shù)上,例如你能夠讓這類應(yīng)用在不修改代碼的前提下添加多字節(jié)的處理能力。
比如,啟用函數(shù)重載后,mb_substr() 將會代替 substr() 被調(diào)用。
在很多情況下這個功能允許讓僅支持單字節(jié)編碼的應(yīng)用簡單地和多字節(jié)環(huán)境對接。

要使用函數(shù)重載功能,設(shè)置 php.ini 里的 mbstring.func_overload 為正值,就是表示為重載函數(shù)分類的位掩碼組合。
要重載 mail() 函數(shù)需要設(shè)置它為 1。字符串函數(shù)設(shè)置為 2,正則表達(dá)式函數(shù)為 4。 例如,當(dāng)它設(shè)置為 7, mail、strings和 正則表達(dá)式函數(shù)將都會被重載。

那么這種情況下php runtime狀態(tài)是未知的, 所以在計算字符長度時, 用mb_strlen 8bit來保證計算字符串長度的正確性(按照1byte = 8bit)

查看完整回答
反對 回復(fù) 2019-03-18
  • 1 回答
  • 0 關(guān)注
  • 1133 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號