json_encode 中文
由于json_encode不能将包含中文的非UTF8格式的数组直接传唤为JS格式(“换后中文会变成NULL”)有两种方式可以解决以上问题
(1)转为UTF-8格式
(2)用URLENCODE方法
1 <?php 2 function arrayEncode(&$arr) { 3 foreach ($arr as $k => $v) { 4 if (is_array($v)) { 5 arrayEncode($arr[$k]); 6 } else { 7 $arr[$k] = urlencode($v); 8 } 9 $keys[]=$k; 10 } 11 foreach ($keys as $key=>$v) 12 { 13 if(is_string($v)) 14 { 15 if($keys[$key]!=urlencode($keys[$key])) 16 { 17 $keys[$key]=urlencode($keys[$key]); 18 } 19 } 20 } 21 $t=array_combine($keys, $arr); 22 return urldecode(json_encode($t)); 23 } 24 25 26 27 $arr=array("姓名"=>"店小一", 28 "年龄"=>'19', 29 'sex'=>'male' 30 ); 31 echo arrayEncode($arr); 32 33 34 //返回值 {"姓名":"店小一","年龄":"19","sex":"male"} 35 ?>