我不能在这个json中得到多个回报。当原始查询返回90k结果时。
我无法弄清楚是什么在肆虐。
我得到的回报也没有按照预期进行组织。它返回以下
{ “材料”:[ “R8190300000”, “0”], “网格”:[ “R8190300000”, “0”]}
很抱歉,我一直在寻找答案,但不能在互联网上找到答案。<?php
$link = mysqli_connect("localhost","blablabla","blablabla","blablabla");
if (mysqli_connect_error()) {
die("Could not connect to database");
}
$query =" SELECT material,grid FROM ZATPN";
if( $result = mysqli_query( $link, $query)){
while ($row = mysqli_fetch_row($result)) {
$resultado['material']=$row;
$resultado['grid']=$row;
}
} else {
echo"doesnt work";
}
file_put_contents("data.json", json_encode($resultado));
?>
答案 0 :(得分:0)
问题是您要覆盖数组键的值:
$resultado['material']=$row;
$resultado['grid']=$row;
最后你将只有最后两行;我建议你使用类似的东西:
$resultado['material'][] = $row;
$resultado['grid'][] = $row;
这样可以保存$resultado['grid']
中的成对行和$resultado['material']
中未成对的行;
在评论中的信息之后,您可以使用以下代码:
$allResults = array();
while ($object = mysqli_fetch_object($result)) {
$resultado['id'] = $object->id;
$resultado['name'] = $object->name;
$resultado['item'] = $object->item;
$resultado['price'] = $object->price;
$allResults[] = $resultado;
}
file_put_contents("data.json", json_encode($allResults));