php 輸出json及顯示json中的中文漢字詳解及實(shí)例
php 輸出json及顯示json中的中文漢字
在php中,我們經(jīng)常需要將數(shù)組輸出json,只需要使用json_encode函數(shù)處理一下數(shù)組即可,但有的時(shí)候數(shù)組里面有中文,使用json_encode函數(shù)處理后中文字符被編碼成了Unicode,如何才能在json中顯示中文呢?請(qǐng)看下文。
首先介紹一下php輸出json格式:
一種最簡(jiǎn)單的用法,就是把數(shù)組直接輸出為json,如下:
<?php $arr = array('p1'=>'ni"hao','p2'=>2,'ch'=>'碼農(nóng)你好!'); $json = json_encode($arr); echo $json; ?>
輸出的結(jié)果為:
{"p1":"ni\"hao","p2":2,"ch":"\u7801\u519c\u4f60\u597d\uff01"}
這里要注意:
雙引號(hào)在json中會(huì)被自動(dòng)編碼為\",這個(gè)很好理解,js中字符串中是不允許出來單引號(hào)、雙引號(hào)和反斜杠的。
中文字符被編碼成了Unicode
如果是寫接口,那直接這樣輸出就夠了,中文無需去做處理。等到了客戶端,再去把Unicode的中文轉(zhuǎn)成漢字即可。但如果要在服務(wù)器端直接輸出漢字出來,那我們可以做如下處理。
<?php $arr = array('p1'=>'nihao','p2'=>2,'ch'=>'碼農(nóng)你好!'); $json = json_encode($arr); echo decodeUnicode($json); function decodeUnicode($str){ return preg_replace_callback('/\\\\u([0-9a-f]{4})/i', create_function( '$matches', 'return mb_convert_encoding(pack("H*", $matches[1]), "UTF-8", "UCS-2BE");' ), $str); } ?>
輸出:
{"p1":"ni\"hao","p2":2,"ch":"碼農(nóng)你好!"}
這個(gè)操作很簡(jiǎn)單,其實(shí)就是把輸出結(jié)果匹配一下,把Unicode還原成了漢字。
感謝閱讀,希望能幫助到大家,謝謝大家對(duì)本站的支持!
- php實(shí)現(xiàn)的http請(qǐng)求封裝示例
- php使用FFmpeg接口獲取視頻的播放時(shí)長、碼率、縮略圖以及創(chuàng)建時(shí)間
- php 時(shí)間time與日期date之間的使用詳解及區(qū)別
- 深入了解PHP中的Array數(shù)組和foreach
- PHP運(yùn)行模式匯總
- PHP數(shù)組的定義、初始化和數(shù)組元素的顯示實(shí)現(xiàn)代碼
- PHP中獲取文件創(chuàng)建日期、修改日期、訪問時(shí)間的方法
- PHP利用超級(jí)全局變量$_GET來接收表單數(shù)據(jù)的實(shí)例
- PHP利用超級(jí)全局變量$_POST來接收表單數(shù)據(jù)的實(shí)例
- php使用file函數(shù)、fseek函數(shù)讀取大文件效率對(duì)比分析
- 前端實(shí)現(xiàn)文件的斷點(diǎn)續(xù)傳(前端文件提交+后端PHP文件接收)
- PHP獲取訪問頁面HTTP狀態(tài)碼的實(shí)現(xiàn)代碼
- PHP之將POST數(shù)據(jù)轉(zhuǎn)化為字符串的實(shí)現(xiàn)代碼
相關(guān)文章
在Yii2特定頁面如何禁用調(diào)試工具欄Debug Toolbar詳解
這篇文章主要給大家介紹了關(guān)于在Yii2特定頁面如何禁用調(diào)試工具欄Debug Toolbar的相關(guān)資料,文中通過詳細(xì)的示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起看看吧。2017-08-08Apache+php+mysql在windows下的安裝與配置(圖文)
2008-02-02ThinkPHP設(shè)置禁止百度等搜索引擎轉(zhuǎn)碼(簡(jiǎn)單實(shí)用)
這篇文章主要介紹了ThinkPHP設(shè)置禁止百度等搜索引擎轉(zhuǎn)碼(簡(jiǎn)單實(shí)用)的相關(guān)資料,需要的朋友可以參考下2016-02-02實(shí)例介紹PHP中zip_open()函數(shù)用法
在本篇內(nèi)容里小編給大家分享了關(guān)于PHP中zip_open()函數(shù)用法的相關(guān)知識(shí)點(diǎn),有需要的朋友們跟著學(xué)習(xí)下。2019-02-02在服務(wù)端進(jìn)行目錄建立、刪除,文件上傳、刪除的過程的php代碼
下面的php代碼具有查看服務(wù)器端目錄和文件,刪除文件夾等操作,是學(xué)習(xí)php文件操作不錯(cuò)的參考資料2008-09-09WordPress中設(shè)置Post Type自定義文章類型的實(shí)例教程
這篇文章主要介紹了WordPress中設(shè)置Post Type自定義文章類型的實(shí)例教程,后臺(tái)文章類型的設(shè)置是WordPress的一大特色,然而自帶的文章類型往往并不夠用,需要的朋友可以參考下2016-05-05