简体   繁体   English

PHP:如何在上周度过一天?

[英]PHP: how to get a day in last week?

Is there an easy way to get last week's, say, Monday? 有没有一种简单的方法来获取上周的时间,例如星期一? If today is Tuesday, I do not want yesterday's Monday. 如果今天是星期二,我不要昨天的星期一。 Rather, I want the Monday 8 days ago (last week's Monday). 相反,我想要8天前的星期一(上周的星期一)。 Then I want that Monday's proceeding Sunday. 然后,我希望星期一继续进行。 Basically, I'm trying to get the date range for last week, Monday to Sunday. 基本上,我正在尝试获取上周的星期一至星期日的日期范围。

This doesn't always work right: 这并不总是正确的:

date('Ym-d', strtotime('last Monday')

Suggestions? 建议?

You can use “this week” format: 您可以使用“本周”格式:

$monday = strtotime( 'this week', strtotime( '7 days ago' ) );
$sunday = strtotime( '+ 6 days', $monday  );

eval.in demo 评估演示

“this_week” returns monday of previous week, then — adding 6 days — you obtain the monday of relative week. “ this_week”返回上周的星期一,然后-加6天-您将获得相对星期的星期一。

The strtotime function accepts the current date as a parameter. strtotime函数接受当前日期作为参数。

http://php.net/manual/en/function.strtotime.php http://php.net/manual/en/function.strtotime.php

Just pass in strtotime('last Sunday') as the parameter to get a weekday of the last full week. 只需传入strtotime('last Sunday')作为参数即可获取上一整周的工作日。

$beginning_of_week = strtotime('last Sunday');
$result = date('Y-m-d', strtotime('last Monday', $beginning_of_week));

echo $result;

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM