【发布时间】:2015-06-24 02:04:48
【问题描述】:
我有一个 PHP 代码,它在被调用时会写入一个 JSON 文件。该文件包含一些来自西班牙语和葡萄牙语的拉丁字符。直接浏览到其 URL 时,它在浏览器上正确显示,但在应用程序和开发者控制台中的响应预览选项卡下,这些字符被替换为字符 ...。
该文件是用 PHP 编写的,代码如下:
file_put_contents('../data/cameras.json', $json, LOCK_EX);
我尝试了很多方法来修复这种编码,但都没有成功(其中一些甚至删除了字符,但这不是一个可接受的解决方案)。
关于如何解决这个问题的任何建议?
【问题讨论】:
-
$json的制作效果如何? -
能否发布来自开发者控制台的响应头和PHP代码存储在服务器中的原始文件?
-
正在从 Postgre 数据库(我不知道它的编码)中读取信息并由
str_replace(array("\r", "\n"), "", (str_replace('"', "'", trim($string))));进行清理。该文件位于seventh.com.br/calculadora2-testing/data/cameras.json -
那么,您是在使用
json_encode,还是手动将 JSON 拼凑在一起? -
1) 使用 UTF-8 建立与数据库的连接,2) 将数据结构创建为 PHP 数组,3) 使用
json_encode输出到 JSON。然后您的编码问题将得到解决。目前您的 JSON 可能无效,因为它不是 UTF-8 编码的。
标签: javascript php json encoding utf-8