json_encode无法编码两个php数组中的一个 - 为什么?

时间:2015-01-27 16:56:28

标签: php arrays json

我有两个我要编码为json的php数组。 一个成功(我得到一个json数组),另一个失败(没有输出)。

这是失败的:http://pastebin.com/zyiTuARn

这是成功的:http://pastebin.com/qHrXKTyn

任何人都可以告诉我为什么第一个没有输出任何东西?

谢谢

1 个答案:

答案 0 :(得分:3)

失败的数组不是UTF-8编码的。

我通过使用这个简洁的功能解决了它:

        function utf8_converter($array)
        {
            array_walk_recursive($array, function(&$item, $key){
                if(!mb_detect_encoding($item, 'utf-8', true)){
                        $item = utf8_encode($item);
                }
            });
            return $array;
        }