[英]PHP Creating JSON array of arrays (data coming from MySQL)
我一直在搜索,無法獲得任何解決方案......這是我的代碼,問題在於如何創建1個大型的每個sql行數組:(注釋掉的行是一個導致錯誤)。
$result = mysqli_query($con, "SELECT * FROM `Orders` WHERE `userID` = " . $objData->userid . " ORDER BY `recievedDate` DESC LIMIT 10");
$resArray = array();
if ($result->num_rows > 0) {
while($row = $result->fetch_row())
{
$tempArr = array("orderid" => $row[0], "orderdate" => $row[2], "orderstatus" => $row[4]);
//$resArray = array_push((array)$resArray, (array)$tempArr); <== problematic line commented out
}
echo json_encode($resArray);
} else {
echo "";
}
謝謝!
除了其他重要方面,你$resArray = array_push((array)$resArray, (array)$tempArr)
分配array_push $resArray = array_push((array)$resArray, (array)$tempArr)
,所以json_encode($resArray)
得到一個數字而不是你需要的數組。
簡單的答案是將$temparr
數組推送到$resArray
如下所示:
$resArray[] = $tempArr;
請注意,如果你真的想要,你也可以使用array_push()
。
不知道你的所有查詢都返回了什么,但是你知道你也可以將你的查詢結果作為一個數組開始嗎?
$resArray = $result->fetch_array(MYSQLI_ASSOC);
如果您的查詢返回的數量超過了數組中的需要,則只需限制查詢:
$result = mysqli_query($con, "SELECT orderid, orderdate, orderstatus FROM `Orders` ...");
$resArray = $result->fetch_array(MYSQLI_ASSOC);
完成!
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.