繁体   English   中英

PHP json_decode返回null

[英]PHP json_decode returning null

我在Google和stackoverflow中搜索了很多,但找不到解决方案。

我有来自数据库的以下json:

{"nome":"Tést","curso":"Educação Infantil","serie":"1ª Etapa 1011"}

如您所见,有一些utf8字符没有保存为unicode。 当我尝试解码此json时,它返回null,而json_last_error返回5

有没有人有办法解决吗?

使用如下。 单引号使用;

$a = '{"nome":"Tést","curso":"Educação Infantil","serie":"1ª Etapa 1011"}';
var_dump(json_decode($a));

这是工作示例: 键盘

如果不行,您也可以使用iconv将stitng转换为utf-8并进行解码;

<?php
$a = '{"nome":"Tést","curso":"Educação Infantil","serie":"1ª Etapa 1011"}';
$a = iconv('UTF-8', 'UTF-8//IGNORE', utf8_encode($a));
$json = json_decode($a);
var_dump($json);
?>

尝试

$utfstr= mb_convert_encoding($str ,"UTF-8");
$output = json_decode($utfstr, true);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM