[英]json_encode with MySQL array
我正在从MySQL中获取一个带有值的数组,并尝试对其进行json_encode()。 虽然没有输出,但是什么也没有。 只是一个白色的屏幕,没有错误,什么都没有。 有任何想法吗? $ rows数组完美地填充了值。
if (!$connection = mysqli_connect($db_host, $db_user, $db_pw, $db))
die( "Connection not successful.\n" );
$sql_qry = "SELECT * FROM `table`;";
if (!$result = mysqli_query($connection, $sql_qry))
echo "Wasn't able to send query: ".mysqli_error($connection)."\n";
while ($rows[] = mysqli_fetch_assoc($result));
mysqli_close($connection);
echo json_encode($rows);
while
分配实际上并没有迭代结果集并将SQL查询中的现有行分配给此变量。 如果希望访问while语句范围之外的返回结果集的全部内容,则需要遍历结果集并将每一行分配给执行while语句之前定义的数组:
$rows = array();
while ($ret = mysqli_fetch_assoc($result)):
$rows[] = $ret;
endwhile;
mysqli_close($connection);
echo json_encode($rows);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.