使用取在foreach循环PHP数组
问题描述:
所以basicly这是我的代码:使用取在foreach循环PHP数组
echo "<SELECT>";
foreach($arr_res as $op) {
$q3 = mysql_query(mysql_fetch_array("SELECT SL_TIME FROM SLOTS WHERE SL_ID='$op'"));
echo "<OPTION value=".$op.">".$q3."</OPTION>";
}
echo "</SELECT>";
$arr_res
是产生的array_diff
的阵列。它只有数值是我的时隙中的SL_ID。我想显示SL_TIME,但是我得到的结果是$q3
产生空的结果。为什么这不起作用?
答
您不查询mysql_fetch_array。 Mysql_query给出你使用mysql_fetch_array的结果。所以正确的代码将是:
echo "<SELECT>";
foreach($arr_res as $op){
$result = mysql_query("SELECT SL_TIME FROM SLOTS WHERE SL_ID='$op'");
$q3=mysql_fetch_array($result);
echo "<OPTION value=".$op.">".$q3."</OPTION>";
}
echo "</SELECT>";
但是,$ q3将是一个数组,这可能不是你想要的。另外,如果使用PDO这样的抽象(http://www.php.net/manual/en/class.pdo.php),会更好。这将最大限度地提高性能并增加安全性。
Allthough复制并粘贴您的解决方案并没有直接与一些小修改,它确实解决了问题!非常感谢! :)(太低而不满意抱歉) –