如何在 php 中使用嵌套的每个循环在数组中添加项目
How to add item in array using nested for each loop in php
我正在尝试从 PHP 中的 table 创建行对象数组。我正在使用下面的代码来完成它,但我没有得到预期的结果。
我想要以下格式:
[{"fName":"apple","fprice":11,"quantity":2},{"dName":"orange","fprice":31,"quantity":6}]
但是使用下面的代码我只得到最后一行最后一列的值:
$query = 'select fname,fprice,imgpath,fdesc,cid from food_data';
$stid = oci_parse($conn, $query);
oci_execute($stid, OCI_DEFAULT);
while ($row = oci_fetch_assoc($stid)) {
foreach ($row as $key=>$val) {
//echo $item." <br />";
$data = array(
array(''.$key.''=>''.$val.'') );
}
//echo "\n";
}
$query = 'select fname,fprice,imgpath,fdesc,cid from food_data';
$stid = oci_parse($conn, $query);
oci_execute($stid, OCI_DEFAULT);
$res = array();
while ($row = oci_fetch_assoc($stid)) {
$res[] = $row;
}
之后 $res
将包含您想要的内容。
只需获取数组的附加元素 []
。 SELECT
中的所有列都将在那里:
while($data[] = oci_fetch_assoc($stid));
更易用oci_fetch_all():
oci_fetch_all($stid, $data, null, null, OCI_FETCHSTATEMENT_BY_ROW);
在这两种情况下,$data
都是行数组,这些行是列名称和列数据的数组。
我正在尝试从 PHP 中的 table 创建行对象数组。我正在使用下面的代码来完成它,但我没有得到预期的结果。
我想要以下格式:
[{"fName":"apple","fprice":11,"quantity":2},{"dName":"orange","fprice":31,"quantity":6}]
但是使用下面的代码我只得到最后一行最后一列的值:
$query = 'select fname,fprice,imgpath,fdesc,cid from food_data';
$stid = oci_parse($conn, $query);
oci_execute($stid, OCI_DEFAULT);
while ($row = oci_fetch_assoc($stid)) {
foreach ($row as $key=>$val) {
//echo $item." <br />";
$data = array(
array(''.$key.''=>''.$val.'') );
}
//echo "\n";
}
$query = 'select fname,fprice,imgpath,fdesc,cid from food_data';
$stid = oci_parse($conn, $query);
oci_execute($stid, OCI_DEFAULT);
$res = array();
while ($row = oci_fetch_assoc($stid)) {
$res[] = $row;
}
之后 $res
将包含您想要的内容。
只需获取数组的附加元素 []
。 SELECT
中的所有列都将在那里:
while($data[] = oci_fetch_assoc($stid));
更易用oci_fetch_all():
oci_fetch_all($stid, $data, null, null, OCI_FETCHSTATEMENT_BY_ROW);
在这两种情况下,$data
都是行数组,这些行是列名称和列数据的数组。