2012-02-12 72 views
3

當我運行下面的代碼時,我得到了4月30日而不是27日。php strtotime「上個星期五2012年4月」上週五沒有返回

strtotime("Last Friday April 2012"); 

我嘗試運行它作爲週四,而不是和我回到了第29位。

以下所有工作都正常。

strtotime("First Sunday February 2012"); 
strtotime("Third Monday February 2012"); 
strtotime("Second Monday October 2012"); 
strtotime("Fourth Thursday November 2012"); 

任何想法?

+0

的strtotime是垃圾進,垃圾出一個很好的例子 - 你的短語是不夠具體,所以strtotime猜錯了。 – 2012-02-12 04:45:21

回答

9

我相信你回來了3月30日,而不是4月份,對嗎?

Last Friday April 2012執行以下操作:

  • April 2012 SETT的日期2012-04-01
  • Last Friday發生的日期以前(最後)週五是2012-03-30

如果您想要在四月的最後一個星期五,請使用Last Friday May 2012代替,

請參閱Date/Time - Relative Formats來自PHP手冊。

+0

謝謝,它工作。 – NRoscoe 2012-02-12 04:48:29

4

您還可以使用:

strtotime("last friday of April 2012"); 

echo date('F jS, Y h:i:s A', strtotime("last friday of April 2012")); 

這輸出所需時間:

April 27th, 2012 12:00:00 AM 
相關問題