我想遍历一个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'];
}
答案 0 :(得分: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'];
}