2016年7月13日 星期三

【PHP】json 相關 中文亂碼、解碼後為陣列

解決PHP json_encode 中文是亂碼問題
雖然編碼後中文是亂碼,decode之後又會變回正常
但如果存入資料庫要是中文就要用:
PHP 5.4 以下:
function jsonRemoveUnicodeSequences($struct) {
   return preg_replace("/\\\\u([a-f0-9]{4})/e", 
   "iconv('UCS-4LE','UTF-8',pack('V', hexdec('U$1')))", json_encode($struct));
}
PHP 5.4 以上:
json_encode($str,JSON_UNESCAPED_UNICODE);
解碼要變成陣列:
json_decode($str,true);

沒有留言:

張貼留言