获取下周一,周二等的日期
我想找到星期一,星期二,星期三等的日期戳。如果这一天本周还没有到来,我希望日期是本周,否则,下周。谢谢!
参见 strtotime()
strtotime('next tuesday');
您可以通过查看周数来了解您是否已经过了那一天:
$nextTuesday = strtotime('next tuesday');
$weekNo = date('W');
$weekNoNextTuesday = date('W', $nextTuesday);
if ($weekNoNextTuesday != $weekNo) {
//past tuesday
}
我知道这是一个有点晚的答案,但我想添加我的答案以供将来参考。
// Create a new DateTime object
$date = new DateTime();
// Modify the date it contains
$date->modify('next monday');
// Output
echo $date->format('Y-m-d');
好消息是,您也可以使用今天以外的日期执行此操作:
// Create a new DateTime object
$date = new DateTime('2006-05-20');
// Modify the date it contains
$date->modify('next monday');
// Output
echo $date->format('Y-m-d');
要创建范围:
$monday = new DateTime('monday');
// clone start date
$endDate = clone $monday;
// Add 7 days to start date
$endDate->modify('+7 days');
// Increase with an interval of one day
$dateInterval = new DateInterval('P1D');
$dateRange = new DatePeriod($monday, $dateInterval, $endDate);
foreach ($dateRange as $day) {
echo $day->format('Y-m-d')."<br />";
}
PHP 手册 - 日期时间
PHP 手册 - 日期对话
PHP 手册 - 日期周期
PHP 手册 - 克隆