如何"强迫" json_encode()将非utf8字符串转换为null?

时间:2014-07-10 13:32:26

标签: php utf-8 null json

在服务器上运行一个网站(PHP 5.5.9。) - 当我在一个非UTF8字符的对象上运行json_encode()时,它返回false

但本地 - PHP 5.3.10 - json_encode()对同一数据返回JSON对象,只是将非UTF8字符转换为null

我希望在服务器上实现相同的行为...希望 - 不要降级PHP。

2 个答案:

答案 0 :(得分:1)

您可以递归遍历数组/对象,并在utf8_encode()返回false的任何值上使用mb_check_encoding()(或将其设置为null)。

答案 1 :(得分:1)

您可以使用常量JSON_PARTIAL_OUTPUT_ON_ERROR