《PHP編程:php中json_encode不兼容JSON_UNESCAPED_UNICODE的解決方案》要點(diǎn):
本文介紹了PHP編程:php中json_encode不兼容JSON_UNESCAPED_UNICODE的解決方案,希望對(duì)您有用。如果有疑問,可以聯(lián)系我們。
PHP5.4才支持JSON_UNESCAPED_UNICODE這個(gè)參數(shù),此參數(shù)是讓中文字符在json_encode的時(shí)候不用轉(zhuǎn)義,減少數(shù)據(jù)傳輸量.但在PHP5.3中,就得自己寫個(gè)函數(shù)來實(shí)現(xiàn),以下就是解決方法:PHP實(shí)例
/** * 對(duì)變量進(jìn)行 JSON 編碼 * @param mixed value 待編碼的 value ,除了resource 類型之外,可以為任何數(shù)據(jù)類型,該函數(shù)只能接受 UTF-8 編碼的數(shù)據(jù) * @return string 返回 value 值的 JSON 形式 */ 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); } }
判斷PHP的版本,如果低于5.4則使用自定義函數(shù)來實(shí)現(xiàn),如果是5.4及以上版本則使用JSON_UNESCAPED_UNICODE.PHP實(shí)例
以上就是php中json_encode不兼容JSON_UNESCAPED_UNICODE的解決方案 ,希望能給大家一個(gè)參考,了解更多PHP的語法,大家可以關(guān)注《PHP5在線手冊(cè)》,也希望大家多多支持維易PHP.PHP實(shí)例
轉(zhuǎn)載請(qǐng)注明本頁網(wǎng)址:
http://www.snjht.com/jiaocheng/6287.html