json_encode把中文字符的数组转为json格式
1 function ch_json_encode($data) { 2 /** 3 * 将中文编码 4 * @param array $data 5 * @returnstring 6 */ 7 function ch_urlencode($data) { 8 if (is_array($data) || is_object($data)) { 9 foreach ($data as $k => $v) { 10 if(is_string($v)){ 11 $v=htmlspecialchars($v); 12 } 13 if (is_scalar($v)) { 14 if (is_array($data)) { 15 $data[$k] = urlencode($v); 16 } elseif (is_object($data)) { 17 $data->$k =urlencode($v); 18 } 19 } elseif (is_array($data)) { 20 $data[$k] = ch_urlencode($v);//递归调用该函数 21 } elseif (is_object($data)) { 22 $data->$k = ch_urlencode($v); 23 } 24 } 25 } 26 return$data; 27 } 28 $ret = ch_urlencode($data); 29 $ret =json_encode($ret); 30 return urldecode($ret); 31 }