Php 仅返回每行值的第一个字母
我对通常通过查询数组的简单foreach循环有点问题。我试图从一行中找到各个字段的值,但它只返回每个字段的第一个字母。OCI新手,如有任何帮助,将不胜感激Php 仅返回每行值的第一个字母,php,sql,oracle,oracle10g,oracle-call-interface,Php,Sql,Oracle,Oracle10g,Oracle Call Interface,我对通常通过查询数组的简单foreach循环有点问题。我试图从一行中找到各个字段的值,但它只返回每个字段的第一个字母。OCI新手,如有任何帮助,将不胜感激 $custcart = oci_parse($conn,"SELECT * FROM A113222813_CARTLINE WHERE CUST_ID= :cust_id"); oci_bind_by_name($custcart, ":cust_id", $_SESSION["CUST_ID"]); if (!$custcart)
$custcart = oci_parse($conn,"SELECT * FROM A113222813_CARTLINE WHERE CUST_ID=
:cust_id");
oci_bind_by_name($custcart, ":cust_id", $_SESSION["CUST_ID"]);
if (!$custcart) {
echo "There was an error. Please wait wwhile we redirect you.";
$url ="login.php";
$time_out = 5;
header("refresh: $time_out; url=$url");
}
oci_execute($custcart);
include 'includes/header.php';
while ($row = oci_fetch_array($custcart, OCI_ASSOC)) {
foreach ($row as $item) {
echo $item['CART_NAME'];
}
}
while
正在所有返回的行上循环。然后,您将foreach
遍历该行并访问该行中的列(不要这样做)。您只需在$row
中输入while
并访问购物车名称
:
while ($row = oci_fetch_array($custcart, OCI_ASSOC)) {
echo $row['CART_NAME'];
}
如果要将行存储在数组中,以便在脚本中多次使用,则:
while ($row[] = oci_fetch_array($custcart, OCI_ASSOC)) { }
//now or later
foreach ($row as $item) {
echo $item['CART_NAME'];
}
在
foreach()
loop typeprint\r($row)
之前,告诉我输出结果:数组([CART\u ID]=>1001[CUST\u ID]=>1061[CART\u NAME]=>MORNING GROWLER[CART\u QTY]=>12[CART\u DATE]=>2014年3月12日[PRICE]=>7.99)11M117谢谢,但是如果我返回了多行,那么每个行都需要一个,对吗?如果有一行,您可以删除while@user2145682:while正在所有行中循环,直到没有更多行。谢谢!为我的愚蠢道歉,但我以前只使用过MySQL和PDO!