我有一个数组数组。每个内部数组都有字符串元素。
其中一个字符串包含: -
这会导致
异常'PHPErrorException',消息'警告 [2] json_encode():参数
中的UTF-8序列无效
当我致电json_encode
时。如果该字符不存在,则函数调用有效。如何确保json_encode
支持任何字符,或者忽略不支持的字符?我一直在玩iconv
和各种转换,但无济于事。
答案 0 :(得分:1)
您是否尝试过迭代数组并在传递给htmlentities
之前在每个字符串上运行json_encode
?
如果问题出在破折号上,那么html编码可能会有所帮助(虽然有几种不同类型的破折号,因此有助于了解特定PHP特定的破折号)。
如下所述,可能需要ENT_SUBSTITUTE
(PHP 5.4 +)
答案 1 :(得分:0)
您正在使用en dash
。请查看here.
为什么不尝试str_replace()
使用此字符–
及其对应的HTML编号–