在PHP中查找当前周和上周的日期范围

时间:2014-05-06 19:06:44

标签: php date

在PHP中执行此操作的最简单方法是什么?

我需要在SQL查询中使用变量。

例如,今天是2015年5月6日。

$current_monday = '05-MAY-2014'
$current_friday = '09-MAY-2014'
$last_monday    = '28-APR-2014' 
$last_friday    = '02-MAY-2014'

4 个答案:

答案 0 :(得分:1)

DateTime()接受相对格式,这使得这很容易做到:

$current_monday = (new DateTime('Monday this week'))->format('d-M-Y');
$current_friday = (new DateTime('Friday this week'))->format('d-M-Y');
$last_monday    = (new DateTime('Monday last week'))->format('d-M-Y');
$last_friday    = (new DateTime('Friday last week'))->format('d-M-Y');

05-May-2014
09-May-2014
28-Apr-2014
02-May-2014

Demo

答案 1 :(得分:0)

$nextMonday = new DateTime('next monday');
$nextFriday = new DateTime('next friday');
$thisMonday = new DateTime('this monday');
$thisFriday = new DateTime('this friday');
$lastMonday = new DateTime('last monday');
$lastFriday = new DateTime('last friday');

现在要在mysql中使用它,只需添加->format('Ymd')

即可

......例如。 $thisMonday->format('Ymd');

这将返回格式为20140506的日期,这对Mysql中的DateTime列是友好的

答案 2 :(得分:0)

不确定你的问题是什么, 但也许你可以试试:

$time = time(); //today
$tmr = $time+(24*60*60);

echo date('Y-m-d', $tmr);

也: http://www.php.net/manual/en/datetime.modify.php

答案 3 :(得分:0)

另见strtotime()http://php.net/manual/en/function.strtotime.php

strtotime("+1 week");