1. 程式人生 > >關於json_encode中文為null的情況

關於json_encode中文為null的情況

        記得以前在網上遇到過別人的求助帖,說是json_encode後發現json欄位有null的情況,那時自己也沒遇到過,就用一個笨的方法解決。

$arr = array('name'=>'牛人','hobby' => 'c好ode');
foreach($arr as &$value) {
    $value = urlencode($value);
}

$str =json_encode($arr);
$str = urldecode($str);
echo $str,'<br />';


        後來,自己在專案中也遇到過,仔細分析了下,竟發現然來是指令碼檔案在儲存檔案編碼為ANSI,也就是不是UTF-8的狀態下會是null,因為json格式是正對utf-8 的,於是改了下指令碼檔案編碼,就ok了。

$arr = array('name'=>'牛人','hobby' => 'c好ode');
$str =json_encode($arr);
echo $str,'<br />';