Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/281.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 颤振:解析带有特殊字符的Json(utf-8)_Php_Json_Parsing_Flutter_Utf 8 - Fatal编程技术网

Php 颤振:解析带有特殊字符的Json(utf-8)

Php 颤振:解析带有特殊字符的Json(utf-8),php,json,parsing,flutter,utf-8,Php,Json,Parsing,Flutter,Utf 8,我有一个非常基本的php代码,可以生成包含一些数据的JSON文件: $json = json_encode($theData, JSON_PRETTY_PRINT | JSON_FORCE_OBJECT | JSON_UNESCAPED_UNICODE); file_put_contents('api.json', $json); 当我在我的flatter应用程序中解析它时,它会返回特殊字符,而不是像“戥戥戥戥戥”这样的字符 我在Flatter中解析json文件,如下所示: var data

我有一个非常基本的php代码,可以生成包含一些数据的JSON文件:

$json = json_encode($theData, JSON_PRETTY_PRINT | JSON_FORCE_OBJECT | JSON_UNESCAPED_UNICODE);
file_put_contents('api.json', $json);
当我在我的flatter应用程序中解析它时,它会返回特殊字符,而不是像“戥戥戥戥戥”这样的字符

我在Flatter中解析json文件,如下所示:

var data = await http.get("xxxx/api.json", headers: {'Content-Type': 'application/json'});
if (data.statusCode == 200) {
    print('Status Code 200: Ok!');
    var jsonData = json.decode(data.body);
然后,我发现改变:

json.decode(data.body);
作者:

解决了这个问题


问题是:为什么使用utf8.decode和bodyBytes解决了这个问题?我是否正确地使用PHP创建JSON文件?

数据从哪里来?听起来数据的存储方式或PHP脚本的访问方式可能有问题。$theData基本上是我创建的一个数组。这是一个基本的json结构。内容中有许多特殊字符,如“俎óá俎”。然后我将其写入共享主机服务器中的一个“.json”文件中。然后我将解析到flatter应用程序中。谢谢-
json.decode(utf8.decode(data.bodyBytes))
完成了。我很高兴,
$theData
来自哪里?听起来数据的存储方式或PHP脚本的访问方式可能有问题。$theData基本上是我创建的一个数组。这是一个基本的json结构。内容中有许多特殊字符,如“俎óá俎”。然后我将其写入共享主机服务器中的一个“.json”文件中。然后我将解析到flatter应用程序中。谢谢-
json.decode(utf8.decode(data.bodyBytes))
完成了。我很高兴
json.decode(utf8.decode(data.bodyBytes));