0

我想遍历一个 MySQL 表,并根据循环所在的当前行和前一个循环执行计算。

假设我的表有 2 列 -Film_id并且FilmRelease,我将如何循环并回显当前FilmRelease和前一行的列值的计算?

多谢你们

我已经到了这个阶段,但由于某种原因它没有打印出任何东西

<?php
 mysql_connect("localhost", "****", "*****") or die(mysql_error()); 
 mysql_select_db("*****") or die(mysql_error()); 

 $sql = mysql_query("SELECT FilmRelease FROM Films_Info") 
 or die(mysql_error()); 

 $last_value = null;

while ($row = mysql_fetch_assoc($sql)) {

  if (!is_null($last_value)) {

    print date_diff($row['FilmRelease'], $last_value) . "<BR>";
  }

  $last_value = $row['FilmRelease'];
}
4

1 回答 1

2

像这样:

$last_value = null;

while ($row = mysql_fetch_assoc($sql)) {

  if (!is_null($last_value)) {
    $interval = date_diff(new DateTime($row['FilmRelease']), new DateTime($last_value));
    echo $interval->format('Y-m-d');
  }

  $last_value = $row['FilmRelease'];
}
于 2012-04-19T11:10:53.693 回答