我收到来自网络服务的回复,其值为ISO-8859-1编码。提供的库将响应转换为数组,我使用json_encode
序列化响应并将其存储在数据库中。它是一个MySQL数据库,InnoDB引擎,具有UTF8字符集。
我的日志中的警告显示编码问题:
PHP Warning: json_encode(): Invalid UTF-8 sequence in argument in...
我知道数组键值是正常的,因为它们总是相同的,并且我没有看到每个请求的警告。
使用array_map
和utf8_encode
来消除警告是否有任何不利之处?
json_encode(array_map('utf8_encode', $response))
答案 0 :(得分:1)
无论如何,你需要系统地调用它。所以去吧。