json encode轉義中文問題

2022-03-02 08:04:34 字數 525 閱讀 7200

預設情況下php的 json_decode 方法會把特殊字元進行轉義,還會把中文轉為unicode編碼形式。

這使得資料庫檢視文字變得很麻煩。所以我們需要限制對於中文的轉義。

對於php5.4+版本,json_decode函式第二個引數,可以用來限制轉義範圍。

要限制中文,使用json_unescaped_unicode引數。

json_encode($a, json_unescaped_unicode); 

對於php5.3版本,可以先把ascii 127以上的字元轉換為html數值,這樣避免被json_decode函式轉碼

function my_json_encode($arr)  

array_walk_recursive($arr, function (&$item, $key) );   

return mb_decode_numericentity(json_encode($arr), array (0x80, 0xffff, 0, 0xffff), 'utf-8'); 

json encode轉義中文問題

預設情況下php的 json decode 方法會把特殊字元進行轉義,還會把中文轉為unicode編碼形式。這使得資料庫檢視文字變得很麻煩。所以我們需要限制對於中文的轉義。對於php5.4 版本,json decode函式第二個引數,可以用來限制轉義範圍。要限制中文,使用json unescaped...

json encode轉義問題

2.實踐 對於處理字串中本來就包含雙引號就使用中文雙引號,防止報錯 a 明月幾時有 蘇州 n把酒問青天 n 注意雙引號 echo unicode json encode a,json unescaped unicode n echo all json encode a,json unescaped ...

PHP中json encode中文編碼的問題

php的json擴充套件自帶的json encode函式,如果對含有中文的字元進行編碼時,會自動轉換成unicode編碼。a array city 北京 abcd天津 echo json encode a n debian test server home php php test1.php 現在有...