将日语字符转换为UTF-8 for php json_encode

时间:2014-04-20 07:29:13

标签: php utf-8 json

我的(UTF-8编码)数据库中有一个日语字符串'利用规约'传递给php的json_encode函数并收到此警告:

PHP警告:json_encode():参数

中的UTF-8序列无效

有没有办法将其转换为有效的UTF-8以避免这种情况?如果db是utf-8,为什么php会遇到字符串问题?

更新

事实证明,错误实际上是由于sprintf和多字节字符出现问题而导致错误。

2 个答案:

答案 0 :(得分:4)

utf8_encode应该适合你。

http://www.php.net/manual/en/function.utf8-encode.php

如果utf8_encode不起作用,请尝试使用mb_convert_encoding:

mb_convert_encoding($string,"UTF-8","auto");

答案 1 :(得分:1)

utf8_encode仅适用于ISO-8859-1(请参阅此处的语言范围wikip


你应该尝试mb_convert_encoding()php encoding doc

:)