你真的知道 strtotime 嗎?

2021-09-28 12:55:38 字數 1159 閱讀 4287

課堂小提問

echo date('y-m-d', strtotime("-1 month", strtotime("2017-03-31")));輸出什麼?

echo date('y-m-d', strtotime(" +1 month", strtotime("2017-08-31")));輸出又是什麼?

現在公布正確答案了:

echo date('y-m-d', strtotime("-1 month", strtotime("2017-03-31")));//輸出2017-03-03

echo date('y-m-d', strtotime(" +1 month", strtotime("2017-08-31")));//輸出2017-10-01

小夥伴們,你們答對了嗎?

沒有答對也不要慌,接著往下看

第一步:先做 -1 month,2017-07-31的 -1 month 就是2017-06-31

第二步:做日期規範化,因為6月沒有31號,只有30號,多了一點要加上,所以6月31就等於了7月1日

又有人說了,我不想讓日期規範化,我希望月底的 -1 month 或者 +1 month也是月底,怎麼搞?

別急,這是我接下來要說的

從 php5.3 開始,date新增了一系列修正短語,來明確這個問題,也就是「first day of」和「last day of」,你可以限定好不要讓date自動「規範化」

echo date('y-m-d', strtotime("last day of -1 month", strtotime("2017-03-31")));//輸出2017-02-28

echo date('y-m-d', strtotime("first day of -1 month", strtotime("2017-03-31")));//輸出2017-09-01

好啦,小夥伴們都記住了吧

記住的話,你們也可以當別人的老師了,小小炫耀一番,哈哈,我也是剛入手的知識,熱乎著,大家如果想看一手資料,大手點一下:

那麼,課堂時間到此結束,bye~

你真的知道HTML嗎?

經過幾次面試當中,被問及到最基礎的東西,沒想到回答不上來,有點蛋痛,今天特地的複習了一下!內容 1.doctype 文件型別 的作用是什麼?有多少文件型別?2.瀏覽器標準模式和怪異模式之間的區別是什麼?3.html dhtml xhtml是什麼?以及它們的區別是什麼?一 doctype 文件型別 的...

程式設計 你真的知道開源嗎?

開源,opensource 全稱為開放源 開源就是要使用者利用源 在其基礎上修改和學習的,但開源系統同樣也有版權,同樣也受到法律保護。你對原始碼進行二次開發進行修改bug修復等版權可以標為自己開發。開源被非盈利軟體組織 美國的opensourceinitiative協會 註冊為認證標記,並對其進行了...

你真的知道敏捷和迭代嗎?

迭代開發流程 什麼叫迭代開發?在迭代開發中,整個開發工作被組織為一系列的短小的 固定長度 如3周 的小專案,被稱為一系列的迭代,這叫迭代開發。每一次迭代都包括了定義 需求分析 設計 實現與測試。而敏捷開發是以使用者的需求進化為核心,採用迭代 循序漸進的方法進行軟體開發。前者是軟體開發的生命週期模型,...