将数组值从ISO-8859-1转换为UTF8以进行JSON编码

时间:2013-08-23 20:36:52

标签: php mysql encoding utf-8 iso-8859-1

我收到来自网络服务的回复,其值为ISO-8859-1编码。提供的库将响应转换为数组,我使用json_encode序列化响应并将其存储在数据库中。它是一个MySQL数据库,InnoDB引擎,具有UTF8字符集。

我的日志中的警告显示编码问题:

PHP Warning:  json_encode(): Invalid UTF-8 sequence in argument in...

我知道数组键值是正常的,因为它们总是相同的,并且我没有看到每个请求的警告。

使用array_maputf8_encode来消除警告是否有任何不利之处?

json_encode(array_map('utf8_encode', $response))

1 个答案:

答案 0 :(得分:1)

无论如何,你需要系统地调用它。所以去吧。