我如何确保 PHP json_encode 将对我从数据库读取的任何数据进行编码?
How can I make sure PHP json_encode will encode whatever data I read from the db?
通过 WAMP 上的 PHP 5.5 将数据保存到 MySQL 可以很好地保存。
通过 json_encode 将其召回给客户端确实有效,直到我将新数据删除并输入到我的数据库中。然后 json_encode 返回 nothing
- 没有错误 - 没有数据。日志文件中没有错误。
新数据包含 德国街道名称(带有变音符号等)
我用 ascii 代码替换了德国街道名称。
json_encode 如我所料,问题解决了。
如何解决这个问题?
我的 MySQL INNODB 中的数据保存为 latin1。
在调用 json_encode 之前,是否需要在从数据库读取数据后过滤数据?其他方式?
使用下面的代码:
mysql_query('SET CHARACTER SET utf8');
在sql查询之前,
并在下面使用 json 编码:
json_encode($array, JSON_HEX_TAG | JSON_HEX_APOS | JSON_HEX_QUOT | JSON_HEX_AMP | JSON_UNESCAPED_UNICODE)
通过 WAMP 上的 PHP 5.5 将数据保存到 MySQL 可以很好地保存。
通过 json_encode 将其召回给客户端确实有效,直到我将新数据删除并输入到我的数据库中。然后 json_encode 返回 nothing
- 没有错误 - 没有数据。日志文件中没有错误。
新数据包含 德国街道名称(带有变音符号等)
我用 ascii 代码替换了德国街道名称。
json_encode 如我所料,问题解决了。
如何解决这个问题?
我的 MySQL INNODB 中的数据保存为 latin1。
在调用 json_encode 之前,是否需要在从数据库读取数据后过滤数据?其他方式?
使用下面的代码:
mysql_query('SET CHARACTER SET utf8');
在sql查询之前,
并在下面使用 json 编码:
json_encode($array, JSON_HEX_TAG | JSON_HEX_APOS | JSON_HEX_QUOT | JSON_HEX_AMP | JSON_UNESCAPED_UNICODE)