我有一个Mysql表格,其中包含一个JSON数据列和一个金额列。目标是提取JSON数据和金额并在foreach循环内构建一个数组。以下是我的代码:
$sql = "SELECT `Amount`, `NewObject` FROM `mb_cart` WHERE `MyID` = '$id'";
$data_main = $db->query($sql);
这是我用来构建数组的语句:
foreach ($data_main as $transaction_main) {
$json_decoded = json_decode($transaction_main);
$cart = array('Amount' => $amount, 'CodeType' => $json_decoded->data->Type->data->codeType, 'Name' => $json_decoded->data->Name, 'SiteName' => $json_decoded->data->SiteName);
}
然而,当我运行它时,只返回第一个记录集,金额为空,但JSON数据已列出。感谢任何人愿意分享的见解。
$db->query($sql);
返回什么?是数组还是迭代器?另请参见array_push
和其中的注释,foreach
与引用以及iterator_to_array
。 - hakre