小編給大家分享一下php轉(zhuǎn)義漢字的解決辦法,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
創(chuàng)新互聯(lián)成都企業(yè)網(wǎng)站建設(shè)服務(wù),提供成都網(wǎng)站建設(shè)、成都做網(wǎng)站網(wǎng)站開發(fā),網(wǎng)站定制,建網(wǎng)站,網(wǎng)站搭建,網(wǎng)站設(shè)計(jì),成都響應(yīng)式網(wǎng)站建設(shè)公司,網(wǎng)頁設(shè)計(jì)師打造企業(yè)風(fēng)格網(wǎng)站,提供周到的售前咨詢和貼心的售后服務(wù)。歡迎咨詢做網(wǎng)站需要多少錢:18982081108
php轉(zhuǎn)義漢字的解決辦法:1、使用自定義的“function json_encode_ex($value)”方法實(shí)現(xiàn)中文不轉(zhuǎn)義;2、通過“JSON_UNESCAPED_UNICODE”選項(xiàng)實(shí)現(xiàn)不轉(zhuǎn)義;3、使用urldecode來解碼。
php實(shí)現(xiàn)json_encode()中文字符不轉(zhuǎn)義
在項(xiàng)目中,php提供的接口使用json_encode()函數(shù),在處理中文的時(shí)候, 中文都會(huì)被編碼成Unicode碼, 變成不可讀的, 類似”\u***”的格式,如果想漢字不進(jìn)行轉(zhuǎn)碼,這里提供三種方法
1.php版本在5.3及以下自己寫函數(shù)實(shí)現(xiàn)中文不轉(zhuǎn)義
function json_encode_ex($value) { if(version_compare(PHP_VERSION,'5.4.0','<')){ $str = json_encode($value); $str = preg_replace_callback( "#\\\u([0-9a-f]{4})#i", function($matchs) { return iconv('UCS-2BE', 'UTF-8', pack('H4', $matchs[1])); }, $str ); return $str; }else{ return json_encode($value, JSON_UNESCAPED_UNICODE); } } echo json_encode_ex($arr);
2.php版本5.4以上,json_encode()新增了一個(gè)選項(xiàng),JSON_UNESCAPED_UNICODE 意思是json不要unicode編碼
echo json_encode($arr,JSON_UNESCAPED_UNICODE);
3.先把中文漢字進(jìn)行urlencode然后再使用json_encode,json_encode之后再次使用urldecode來解碼,這樣編碼出來的json數(shù)組中的漢字就不會(huì)出現(xiàn)unicode編碼了
$arr = array( 'key'=>urlencode("測試") ); $json = json_encode($arr); echo urldecode($json); //{"key":"測試"}
看完了這篇文章,相信你對“php轉(zhuǎn)義漢字的解決辦法”有了一定的了解,如果想了解更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!
本文題目:php轉(zhuǎn)義漢字的解決辦法
網(wǎng)頁網(wǎng)址:http://muchs.cn/article10/pjjedo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開發(fā)、小程序開發(fā)、關(guān)鍵詞優(yōu)化、ChatGPT、定制開發(fā)、商城網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)