对数组内容使用了json_encode返回汉字内容返回了空值
Posted ALonely
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了对数组内容使用了json_encode返回汉字内容返回了空值相关的知识,希望对你有一定的参考价值。
如果使用json_encode对数组进行转成JSON字符串时候,发现汉字的全部为空,这样可以说明的一点是你的页面上用的一定不是UTF8编码,在php手册中对json_encode中待编码的值已经说明所有字符串的编码必须是UTF-8;
所以如果你的页面不是UTF-8编码的话,就需要将你的数组内容转码,具体怎么转码?下面例如你的页面是使用GBK编码的:
function Gbk2Utf8($data){ if(is_array($data)){ foreach($data as $key => $value){ $data[$key]=call_user_func(__FUNCTION__,$value); } return $data; } return iconv("gbk","utf-8",$data); }
以上是关于对数组内容使用了json_encode返回汉字内容返回了空值的主要内容,如果未能解决你的问题,请参考以下文章
PHP Json_encode() 空数组时,返回 [] 与 {} 的问题
如果之前未访问过数组,json_encode 返回 null