我正在将json_encode($ data)用于数据数组,并且有一个字段包含俄语字符.我使用这个mb_detect_encoding()来显示该字段的编码,并显示UTF-8.我认为json编码失败是由于其中的一些不良字符,如"ра▒".我在数据上尝试了很多东西utf8_encode,它会传递那个错误但是数据看起来不再正确了.
这个问题可以做些什么?
我想从this获取此 JSON输出。不幸的是json_encode()函数不会将数组编码为该格式。一切都没有回报。这是我的代码。
$output = array(
'responseData' => array(),
'responseDetails' => null,
'responseStatus' => 200
);
$x = 0;
while ($row = mysqli_fetch_assoc($result)) {
foreach ($row as $k => $v) {
$output['responseData']['result'][$x][$k] = $v;
}
$x++;
}
print_r($output);
header('Content-Type: application/json');
echo json_encode($output , JSON_FORCE_OBJECT);
Run Code Online (Sandbox Code Playgroud)
我找不到原因。有人请帮助我找到解决方案。
编辑:对不起。这是输出-
预期的JSON输出-
{
"responseData": {
"results": [{
"qid": 1,
"qtitle": "When do we finish this project ?",
"qimage_url": "http://www.wearesliit.com/example.png",
"user": "samith",
"date": "2016-01-01T02:15:12.356Z",
"type": 1,
"category": 5,
"tags": ["common_senese", "truth", "bazsa_awsanna"],
"note": "Sample …Run Code Online (Sandbox Code Playgroud) 当页面重新加载时,该错误发生在我的 Laravel 应用程序中的某些 Ajax 请求中。一些请求失败并返回以下响应:
exception: "InvalidArgumentException"
file: "C:\wamp64\www\<my app directory>\vendor\laravel\framework\src\Illuminate\Http\JsonResponse.php"
line: 75
message: "Malformed UTF-8 characters, possibly incorrectly encoded"Run Code Online (Sandbox Code Playgroud)
是什么导致了这个错误?如何解决?