新聞中心
1、GBK/GB2312通過php的json_encode函數(shù)漢字會輸出null
//gbk編碼 $gbk = '中文'; echo json_encode($gbk);//null
原因:因為json_encode只支持utf-8的編碼,對于英文沒有什么影響,但是對于中文就會有問題了。
解決辦法:

$gbk = urlencode('中文');
echo urldecode(json_encode($gbk));//中文并不是非得用urlencode編碼,也可以用別的編碼,例如base64_encode等等,大家可以多嘗試一下
2、ajax調(diào)用后端gbk編碼接口會出現(xiàn)亂碼
原因:因為Ajax返回的數(shù)據(jù)默認(rèn)的字符編碼是utf-8
解決辦法: 在后端,如php加上
header('Content-Type:text/html;charset=utf-8');//如果是json最好用Content-Type: application/json或text/plain3、utf8編碼的json_encode也會被編碼,變成不可讀的, 類似”\u***”的格式,Ajax調(diào)用也同樣的問題
原因:json_encode對中文支持不好
解決辦法:(1)可以參考第一種方法;(2)從PHP5.4開始,在json_encode中有了第二個參數(shù),可以通過傳入JSON_UNESCAPED_UNICODE解決,例如
echo json_encode('中文',JSON_UNESCAPED_UNICODE);//中文推薦:采用UTF8編碼,php盡量升級到5.4以上的版本
PS:如果有任何問題,歡迎提出
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點(diǎn)與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。
網(wǎng)頁標(biāo)題:PHPAjaxJSON中文亂碼各種問題解決辦法-創(chuàng)新互聯(lián)
標(biāo)題路徑:http://www.dlmjj.cn/article/dddghd.html


咨詢
建站咨詢
