可能重复:
XXX日期前多少天?
目前我正在使用此代码来确定预计的一天剩余的天数.但是此代码显示了意外的结果.例如,如果$ last_date是2012年12月26日,那么我会得到0 day(s) left.但是它应该是1 day(s) left.我认为我的问题只有floor()功能.不是吗?
$timezone = "Asia/Dhaka";
if(function_exists('date_default_timezone_set')) date_default_timezone_set($timezone);
$now = time();
$last_date = strtotime("$year-$month-$day");
$datediff = $last_date - $now;
$day_left=floor($datediff/(60*60*24));
echo "$day_left day(s) left.";
Run Code Online (Sandbox Code Playgroud)
N:B:我的时区是+6 GMT,我的意思是亚洲/达卡.
根据PHP 文档:
<?php
$year = '2012';
$month = '12';
$day = '26';
$current_date = new DateTime(date('Y-m-d'), new DateTimeZone('Asia/Dhaka'));
$end_date = new DateTime("$year-$month-$day", new DateTimeZone('Asia/Dhaka'));
$interval = $current_date->diff($end_date);
echo $interval->format('%a day(s)');
?>
Run Code Online (Sandbox Code Playgroud)