あなたの例は悪くありません。実際には、閏年/夏時間をどのように処理するつもりなのか、私はもっと心配しています.
PHP 5.3 以上を使用している場合。タイムスタンプの使用を主張する場合を除いて、私はお勧めします(夏時間などをサポートします):
手続き型
$datetime1 = date_create('now');
$datetime2 = date_create('2013-03-07');
$interval = date_diff($datetime1, $datetime2);
$days = $interval->format('%R%a');
if ((int) $days >= 2) {
echo '2 or more days';
echo '<br />';
echo 'Difference: ' . $days . ' days';
} else {
echo 'Bearly ' . $days . ' day or less';
}
物体
$date1 = new DateTime("2013-03-09");
$date2 = new DateTime("now");
$interval = $date1->diff($date2);
$difference = $interval->days;
if($difference >= 2){
echo $difference;
}
mysql を直接使用してみることができます。
これを読んでください: https://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_date-add
mysql> SELECT INTERVAL 1 DAY + '2008-12-31';
-> '2009-01-01'
Mysql date_add() and datediff() are also good alternatives.
PHP 日時差分: http://www.php.net/manual/en/datetime.diff.php