我有一个数组,我使用两个foreach,但是我只能打印第一个foreach。
$test = $db->query("SELECT * FROM Test");
foreach ($test as $readTest) {
echo $readTest["col1"];
}
foreach ($test as $readTest) {
echo $readTest["col2"];
}
然后我尝试一下:
$test1 = $test;
$test2 = $test;
我希望输出$readTest["col1"]
和$readTest["col2"]
,但实际输出是$readTest["col1"]
答案 0 :(得分:0)
使用#fetchAll将所有结果保存在常规数组中。然后,您将可以多次循环播放它们。
答案 1 :(得分:0)
为什么要使用数组,何时可以用这种方式打印:
$test = $db->query("SELECT * FROM Test");
while($PrintTest = $test->fetch_object())
{
echo $PrintTest->col1;
echo $PrintTest->col2;
}
即使您要使用数组,也可以执行以下操作:
$Array1 = array();
$Array2 = array();
$test = $db->query("SELECT * FROM Test");
while($PrintTest = $test->fetch_object())
{
$Array1[] = $PrintTest->col1;
$Array2[] = $PrintTest->col2;
}
然后,您可以使用For或Foreach在整个数组中运行