這裏的情況是:保存MySQL查詢結果爲PHP數組
我有這個數組在PHP中,其目的是從查詢的結果保持數據:
$returnData = array(
'ID' => '',
'NAME' => '',
'DESCRIPTION' => '',
'STATUS' => '',
'STATUS_DESCRIPTION' => '',
'LOCATION' => '',
'_ERROR' => ''
);
後來我執行一個查詢,我想填充這個數組:
$fetchResourceQuery = sprintf('SELECT RESOURCEID, RESOURCENAME, RESOURCEDESCRIPTION,
T3.RESOURCELOCATIONNAME, T2.RESOURCESTATUSNAME,
T2.RESOURCESTATUSDESCRIPTION
FROM resource T1
JOIN resource_status T2
ON T1.RESOURCESTATUSID = T2.RESOURCESTATUSID
JOIN resource_location T3
ON T1.RESOURCELOCATIONID = T3.RESOURCELOCATIONID');
$resultSet = $DB->query($fetchResourceQuery);
if($resultSet){
while($row = $resultSet->fetch_assoc()){
$returnData['ID'] = $row['RESOURCEID'];
$returnData['NAME'] = $row['RESOURCENAME'];
$returnData['DESCRIPTION'] = $row['RESOURCEDESCRIPTION'];
$returnData['STATUS'] = $row['RESOURCESTATUSNAME'];
$returnData['STATUS_DESCRIPTION'] = $row['RESOURCESTATUSDESCRIPTION'];
$returnData['LOCATION'] = $row['RESOURCELOCATIONNAME'];
}
$json_data = json_encode($returnData, JSON_UNESCAPED_SLASHES);
echo $json_data;
}
到目前爲止這是很好的。問題是,我覺得只有一個數據的同時,值得一內部循環被保存,然後將其覆蓋陣列出於某種原因裏面,輸出是這樣的:
{"ID":"456","NAME":"Rack con Televisor #1","DESCRIPTION":"Televisor Sharp Aquos con Laptop, armado en 2011.","STATUS":"Active","STATUS_DESCRIPTION":"Can be reserved.","LOCATION":"First Floor, High School","_ERROR":""}
,因爲有5個資源這是壞在數據庫中,並且只有其中一個被存儲。
如何讓數組存儲多個值,如josn對象?由於顯然我現在嘗試的靈魂沒有工作。
就實現了這個。謝謝。不能相信我沒有想到這個簡單的解決方法。只要我能夠標記答案,就會做到。謝謝! – codeninja