2014-04-24 71 views
0

假設有10周; week_1st,week_2nd,week_3rd ...,week_10th。 week_10th從2014-05-01 00:00:00開始,我如何才能找到week_5th(上週)的開始日期?你會請示我在PHP?非常感謝你。查找每週的開始日期php

+1

怎麼樣增加7天?一週是地球上的7天(這幾天) – zerkms

+0

取決於。你確定第一次約會(2014-05-01)是本週的開始嗎?這是一個星期四..你想要第二週的星期一嗎?你想要第二週的星期四嗎? – Scopey

+0

無論每週哪一天開始,都可以是星期一,星期二或星期三。但是如果week_10th從2014-05-01 00:00:00開始,那麼week_5th的開始日期是什麼? – TapiYuki

回答

1

如果你想要去的正好是5個星期前(或某事),嘗試:

$date = new DateTime('2014-05-01'); 
$date->modify('-5 weeks'); 
echo $date->format('Y-m-d'); 

如果你想始終獲得週一(或類似),您可以嘗試

$date = new DateTime('2014-05-01'); 
$day = (int)$date->format('w'); 
$date->modify('-5 weeks'); 
$date->modify(1 - $day . ' days'); // 1 = Monday 
echo $date->format('Y-m-d'); 
+1

對於你答案的第二部分,另一種方法是使用'strtotime(「5星期前」,$ dateint)' – msound

+0

有趣......我不知道這是可能的。爲了保持OOP的答案,應該注意''date-> modify('5 mondays ago')'也可以。 – Scopey

相關問題