php中json_encode亂碼的解決方法-創(chuàng)新互聯(lián)

這篇文章主要介紹php中json_encode亂碼的解決方法,文中介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們一定要看完!

十載專注成都網(wǎng)站制作,企業(yè)網(wǎng)站建設(shè),個人網(wǎng)站制作服務(wù),為大家分享網(wǎng)站制作知識、方案,網(wǎng)站設(shè)計流程、步驟,成功服務(wù)上千家企業(yè)。為您提供網(wǎng)站建設(shè),網(wǎng)站制作,網(wǎng)頁設(shè)計及定制高端網(wǎng)站建設(shè)服務(wù),專注于企業(yè)網(wǎng)站建設(shè),高端網(wǎng)頁制作,對成都塔吊租賃等多個方面,擁有豐富的網(wǎng)站設(shè)計經(jīng)驗。

解決方法:1、設(shè)置json_encode()第二個參數(shù)的值為“JSON_UNESCAPED_UNICODE”即可;2、先把文本進(jìn)行urlencode轉(zhuǎn)碼,再使用json_encode()編碼,接著進(jìn)行urldecode解碼即可。

php中json_encode亂碼的解決方法

json_encode()用于對變量進(jìn)行JSON編碼;成功則返回 JSON 編碼的字符串 ,在失敗時返回 FALSE 。

在編碼過程中、經(jīng)常會用到j(luò)son_encode來處理中文、但是、出現(xiàn)一個問題、中文都會被轉(zhuǎn)碼、變?yōu)椤?\u**** ”的格式、如何避免被轉(zhuǎn)碼、亂碼呢?

方法1:PHP的版本為5.4以上;

echo json_encode( '中文' );     // "\u4e2d\u6587"
echo json_encode( '中文', JSON_UNESCAPED_UNICODE ); // "中文"

說明:

語法: json_encode ( $value [, $options = 0 ] )

1、$value為要編碼的值,且該函數(shù)只對UTF8編碼的數(shù)據(jù)有效;

2、options:由以下常量組成的二進(jìn)制掩碼:

JSON_HEX_QUOT, JSON_HEX_TAG, JSON_HEX_AMP, JSON_HEX_APOS, JSON_NUMERIC_CHECK, JSON_PRETTY_PRINT, JSON_UNESCAPED_SLASHES, JSON_FORCE_OBJECT, JSON_PRESERVE_ZERO_FRACTION, JSON_UNESCAPED_UNICODE, JSON_PARTIAL_OUTPUT_ON_ERROR。

3、第二個參數(shù)一般不需要;

4、json數(shù)據(jù)其實就是一個string,可以用var_dump()打印出來看數(shù)據(jù)類型;

5、執(zhí)行成功返回JSON數(shù)據(jù),否則返回FALSE。

方法2:先把漢字urlencode轉(zhuǎn)碼、在json_encode; 然后urldecode解碼;

echo $con = '中文'; // 中文
echo $con = urlencode( $con ); // %E4%B8%AD%E6%96%87"
echo $con = json_encode( $con ); // %E4%B8%AD%E6%96%87"
echo $con = urldecode( $con ); // "中文"

以上是php中json_encode亂碼的解決方法的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對大家有幫助,更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司行業(yè)資訊頻道!

網(wǎng)站名稱:php中json_encode亂碼的解決方法-創(chuàng)新互聯(lián)
URL鏈接:http://muchs.cn/article32/dgidpc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供ChatGPT網(wǎng)站策劃、企業(yè)建站網(wǎng)站改版、網(wǎng)站收錄、面包屑導(dǎo)航

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)