希望以两个日期之间的天数形式形成变量。
$dayDiff = round((strtotime('2012-02-18') - strtotime('2012-02-22')) / 86400);
以上显示“-4”是正确的!
$newDate= date('Y-m-d', strtotime($dayDiff . " day"));
以上将$dayDiff
视为正数并吐出'2012-02-25',而不是'2012-02-14'的预期结果。有什么想法吗?
答案 0 :(得分:4)
这将输出:
$dayDiff = round((strtotime('2012-02-18') - strtotime('2012-02-22')) / 86400);
echo $newDate= date('Y-m-d', strtotime($dayDiff . " day", strtotime('2012-02-18')));
或:
$firstDate = strtotime('2012-02-18');
$dayDiff = round(($firstDate - strtotime('2012-02-22')) / 86400);
echo $newDate= date('Y-m-d', strtotime($dayDiff . " day", $firstDate));
strtotime
将从当前时间戳开始,而不是从第18个开始,这就是为什么如果输出:echo date('Y-m-d', strtotime('now'));
它将输出今天的日期,echo date('Y-m-d', strtotime('now - 4 days'));
25和{{ 1}}第18天-4天将输出14。
关于strtotime的更多信息:http://php.net/manual/en/function.strtotime.php
答案 1 :(得分:0)