我在mySQL数据库和数组上运行了一段时间/ foreach以检查它是否存在。它应该循环170次,但它循环超过12000次。那是为什么?
$my_rows = array();
while($row = mysql_fetch_assoc($run_query)){
$my_rows[] = $row;
foreach($my_rows as $row){
if(in_array_r($row['name'], $products)){
echo "Exists";
} else {
echo "Does not exist";
}
}
}
答案 0 :(得分:3)
这里应该发生的是,您将mysql_fetch_assoc
的结果分配给$my_rows
,然后循环遍历$my_rows
的内容。一圈。其中一个循环不需要存在。
$my_rows = mysql_fetch_assoc(...);
foreach($my_rows as $row){ ...do stuff here... }
答案 1 :(得分:2)
$my_rows = array();
while($row = mysql_fetch_assoc($run_query)){
$my_rows[] = $row;
if(in_array_r($row['name'], $products)){
echo "Exists";
} else {
echo "Does not exist";
}
}