繁体   English   中英

将值与while循环中的前一行进行比较?

[英]Comparing a value with previous row in a while loop?

我是PHP的新手,请原谅我提出一个基本问题。

While语句中,有没有办法知道行中的值是否等于上一行中的值?

只需存储它:

$get = mysql_query("...");
$previous = '';
while ($row = mysql_fetch_assoc($get)) {
  $current = $row['...'];
  if ($current == $previous) {
    // do stuff
  }
  $previous = $current;
}
$get = mysql_query("...");
$previous = '';
while ($row = mysql_fetch_assoc($get)) {
  $current = $row['...'];
  if ($current == $previous) {
  // do stuff
}
$previous = $current;
}

此示例无法正常工作。 它将始终跳过数组中的第一条记录。 第一次通过$ previous将是空白,因此$ current和$ previous将不相等。 $ current将不得不空白第一遍,就像之前一样。 在if循环中必须使$ current相等。

$get = mysql_query("...");
$previous = '';
$current = '';
while ($row = mysql_fetch_assoc($get)) {

  if ($current == $previous) {
     $current = $row['...'];
    // do stuff
   }
 $previous = $current;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM