错误异常: json_encode(): 参数中的 UTF-8 序列无效


ErrorException: json_encode(): Invalid UTF-8 sequence in argument

此问题发生在我的服务器中,但我无法重现此问题。我的代码如下

$data = [
            'param1' => urlencode($param1),
            'param2'  => urlencode($param2)
        ];
echo json_encode($data);

$param 1 和 $param 2 由查询字符串获取例如 http://mydomain?param1=param1&param2=param2

我试图通过应用非 utf-8 字符来重现这一点,但无法重现。请帮助我重现这一点。我测试的示例网址。

http://mydomain?param1=parÃam1&param2=param2

提交给函数

json_encode字符串必须是 utf-8 编码的字符串。您可以按如下方式修复此错误

 echo json_encode(utf8_encode($data));