PHP配列回転json,文字列中国語乱符号解決(unicode)
1289 ワード
$arr_tem = array(
array(
"id"=> 1,
"name"=>" ",
"OilMass"=>"",
"YeweiVol"=>"",
"children"=>array("")
)
);
json
$json_arr = json_encode($arr_tem);
{"id":1,"name":"\u6cb9\u5e93","OilMass":"","YeweiVol":"","children":
\u6cb9\u5e93 unicode
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);
}
$jsonstr = decodeUnicode(json_encode($arr_tem));
PHP5.4以上のバージョンでは、このように解決できます.
すなわちJsonはUnicodeを符号化する.
$json_arr = json_encode($arr_tem,JSON_UNESCAPED_UNICODE);