1.獲取本周開始和結束的日期:
echo date("Y-m-d H:i:s", mktime(0,0,0,date("m"),date("d")-date("w")+1,date("Y"))); //2020-03-09 00:00:00 echo date("Y-m-d H:i:s", mktime(23,59,59,date("m"),date("d")-date("w")+7,date("Y"))); //2020-03-15 23:59:59
2.獲取上周開始和結束的日期:
echo date('Y-m-d H:i:s', mktime(0,0,0,date('m'),date('d')-date('w')+1-7,date('Y'))); //2020-03-02 00:00:00 echo date('Y-m-d H:i:s', mktime(23,59,59,date('m'),date('d')-date('w')+7-7,date('Y'))); //2020-03-08 23:59:59
3.獲取本月開始和結束的日期:
echo date('Y-m-d H:i:s', mktime(0,0,0,date('m'),1,date('Y'))); //2020-03-01 00:00:00 echo date('Y-m-d H:i:s', mktime(23,59,59,date('m'),date('t'),date('Y'))); //2020-03-31 23:59:59
4.獲取上月開始和結束的日期:
echo date("Y-m-d H:i:s", mktime(0,0,0,date("m")-1,1,date("Y"))); //2020-02-01 00:00:00 echo date("Y-m-d H:i:s", mktime(23,59,59,date("m") ,0,date("Y"))); //2020-02-29 23:59:59
5.獲取本季度開始和結束的日期:
$season = ceil((date('n'))/3); echo date('Y-m-d H:i:s', mktime(0,0,0,$season*3-3+1,1,date('Y'))); //2020-01-01 00:00:00 echo date('Y-m-d H:i:s', mktime(23,59,59,$season*3,date('t',mktime(0,0,0,$season*3,1,date("Y"))),date('Y'))); //2020-03-31 23:59:59
6.獲取上季度開始和結束的日期:
$season = ceil((date('n'))/3)-1;//上季度是第幾季度 echo date('Y-m-d H:i:s', mktime(0,0,0,$season*3-3+1,1,date('Y'))); //2019-10-01 00:00:00 echo date('Y-m-d H:i:s', mktime(23,59,59,$season*3,date('t',mktime(0,0,0,$season*3,1,date("Y"))),date('Y')));//2019-12-31 23:59:59
7.獲取本月是第幾月:
echo date('n'); //3
8.獲取今天是周幾:
echo date("w"); //4
9.獲取本月總天數:
echo date("t"); //31
10.獲取上月的年月日期:
echo date('Y-m', strtotime(date('Y-m-01') . "-1 month")); //2020-02
這里之所以沒有直接使用 date('Y-m', strtotime("-1 month")) 獲取,是因為strtotime有一個小問題,如果當你獲取的上個月沒有今天的日期,會輸出本月的月份,比如今天是3月31號,2月沒有31號,那就會輸出2020-03,同理下個月(strtotime("+1 month"))也是一樣
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/75606.html
標籤:PHP
上一篇:正則運算式詳解
下一篇:TP5使用Redis處理電商秒殺
