PHP如何将每个数组值与我指定的值进行比较?

时间:2012-06-15 13:17:02

标签: php mysql

比如说这是我的代码:

$query = "SELECT * FROM ...";
$exec_query = mysql_query($query, $db_connect);
$fetchdetails = mysql_fetch_array($exec_query);

我正在使用if这样的条件:

if ($fetchdetails['field_name'] == 3) {
 do something;
}

else {
}

但在此,只有fetchdetails数组中的1行进行比较。我该怎么做才能将该数组中的每一行与3进行比较?我不想要任何OOP的解决方案,我想坚持传统的编码。谢谢。

2 个答案:

答案 0 :(得分:4)

你应该试试这个:

while($fetchdetails = mysql_fetch_array($exec_query)) {
 if ($fetchdetails['field_name'] == 3) {
  do something;
 }

 else {
 }

}

这是因为,在while(...)条件下,您将迭代所有db(选定)记录。 mysql_fetch_array完成记录后,循环将自动停止。

我会记住你mysql_fetch_array

  

返回与获取的行对应的字符串数组,如果没有其他行,则返回FALSE。 (来自manual

这将允许“你”停止迭代过程。

答案 1 :(得分:1)

如果您想要比较$ fetchdetails数组的每一行,那么

foreach($fetchdetails as $index => $value) {
    if($value == 3) { 
        // do something
    }
}

应该这样做!如果要迭代每个SQL值,请参阅另一个答案。