gpt4 book ai didi

php json_encode 为数组返回空白

转载 作者:行者123 更新时间:2023-11-29 03:26:27 24 4
gpt4 key购买 nike

我试图将 mysql 查询的结果作为 json 返回,但 json_encode 函数总是返回空白,尽管数组包含元素。

这里是相关代码

检索查询并转换为 php 数组:

$sql = "blablabla";
$clients = mysql_query($sql, $con);

$result = array();
while($row = mysql_fetch_assoc($clients)) {
//echo "rij: " . $row['name'];
$result[] = $row;
}

然后我返回结果:

echo json_encode($result);

这不会返回任何结果,而我在回显以下语句时确实得到了结果:

echo count($return);

返回 1

echo $return[0];

返回“数组”

echo $return[0]['name'];

返回“YOUREKA!演示”

知道我做错了什么吗?

编辑:我有一条记录应该返回,其中包含以下数据:

编号:2,名称:YOUREKA!演示,地址:Italiëlei 26,邮政编码:2000,城市:安特卫普,国家:比利时,国家代码:BE,电话:+32-476061346,电子邮件:mats@youreka.be,距离:30.762980999827132,

最佳答案

关于 json_encode() 的文档指出“所有字符串数据必须采用 UTF-8 编码。”。您尝试使用 mysql_set_charset 的想法是正确的。

使用这种调试:

<?php
$mysqli = new mysqli("localhost", "my_user", "my_password", "test");

printf("Initial character set: %s\n", $mysqli->character_set_name());

/* change character set to utf8 */
if (!$mysqli->set_charset("utf8")) {
printf("Error loading character set utf8: %s\n", $mysqli->error);
exit();
} else {
printf("Current character set: %s\n", $mysqli->character_set_name());
}

$mysqli->close();
?>

关于php json_encode 为数组返回空白,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35524036/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com