微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

尝试对包含特殊字符的数组进行 json_encode json的回显为空print_r显示sql的内容

如何解决尝试对包含特殊字符的数组进行 json_encode json的回显为空print_r显示sql的内容

如果这是一个愚蠢的问题,我深表歉意,但我现在正在学习,无法在任何地方找到解决方案。

我的数据库表中有一个包含 é 的名称。我运行我的 sql 查询,拉下数据,将其放入一个数组中,然后尝试回显 json 编码,但我什么也没得到。可以print_r,看到sql结果的内容,就知道数据已经从数据库发送过来了。

我现在尝试了各种方法包括 - json_encode($array,JSON_UnesCAPED_UNICODE)。 $ut=utf8_encode($contents); 确保 header = header('Content-Type: application/json; charset=utf-8',true,200);

当我在 é 所在的地方使用 print_r 时,我会得到一个带有问号的黑色菱形。

所以基本上我认为我需要将 é 转换为 unicode 以响应 json 编码?

有人有什么想法吗?

这是我在运行 sql 后使用的代码示例。

$result = $conn->query($sql);

    $data = array();

    while ($row = $result->fetch_assoc()) {

        $data[] = $row;
    }

    echo json_encode($data);

也许这会在将来对某人有所帮助。

我通过更改 $data[] = $row; 解决了它;到 $data[] = array_map("utf8_encode",$row);

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。