PHP Gets the date of last month, next month, month (Strtotime (), date ()), strtotimedate
Write the program today, suddenly found a long time to write a long time to get the number of days of the function, the classic switch version, but to get the number of days last month, I just put the month-1, it was too sleepy, then saw a kind of creepy feeling, would like to deal with again, But I think there is something super convenient way, so found the following version, made a little change.
Get this month's date:
1 function GetMonth ($date) {2 $firstday = Date ("y-m-01", Strtotime ($date)), 3 $lastday = Date ("y-m-d", Strtotime ("$firstday +1 month-1 Day"); 4 return Array ($firstday, $lastday); 5}
$firstday is the first day of the month, if the year is 2014-2, then the $firstday will be 2014-02-01, then according to the $firstday plus one months is 2014-03-01, another day is 2014-02-28, It's so convenient to use date () and Strtotime ().
Get last month Date:
1 function getlastmonthdays ($date) {2 $timestamp =strtotime ($date), 3 $firstday =date (' y-m-01 ', Strtotime ( Date (' Y ', $timestamp). ' -'. (Date (' m ', $timestamp)-1). ' -01 ')); 4 $lastday =date (' y-m-d ', Strtotime ("$firstday +1 month-1 Day")), 5 return Array ($firstday, $lastday); 6 }
Last month's date needs to get a timestamp, and then in the month-1 OK, super smart Date () will 2014-0-1 this thing converted into 2013-12-01, too cool.
Get next month's date:
1 function getnextmonthdays ($date) {2 $timestamp =strtotime ($date), 3 $arr =getdate ($timestamp), 4 if ($ arr[' mon '] = =) {5 $year = $arr [' year '] +1; 6 $month = $arr [' mon '] -11; 7 $firstday = $year. '-0 '. $month. '-01 ' ; 8 $lastday =date (' y-m-d ', Strtotime ("$firstday +1 month-1 Day")), 9 }else{10 $firstday =date (' y-m-01 ', Strtotime (Date (' Y ', $timestamp). ' -'. (Date (' m ', $timestamp) +1). ' -01 ')), one $lastday =date (' y-m-d ', Strtotime ("$firstday +1 month-1 Day")), and a }13 return Array ($firstday , $lastday); 14}
The code for the next month's date looks a bit longer because date () doesn't go like this 2014-13-01, it will go straight back to 1970, so we need to deal with the problem of December, except for December the direct month +1 is OK.
Generally speaking, it is very convenient, the date function is too powerful.
http://www.bkjia.com/PHPjc/1086208.html www.bkjia.com true http://www.bkjia.com/PHPjc/1086208.html techarticle PHP gets last month, next month, this month's date (Strtotime (), date ()), Strtotimedate wrote the program today, suddenly found a long time ago written to get the number of months of the function, the classic ...