今日プログラムを書いていたら、昔書いた月の日数を取得する関数を発見しました。古典的なスイッチバージョンですが、前月の日数を取得するときに、月を-1変更しただけです。その時は眠すぎて不気味な感じがしたので、もう一度対処したいと思いましたが、何か超便利な方法があるはずだと思い、バージョンを見つけました。以下にいくつかの小さな修正を加えました。
今月の日付を取得する:
コードをコピーします コードは次のとおりです:
function getMonth($date){
$firstday = date("Y-m-01",strtotime($date));
$lastday = date( "Y-m-d", strtotime("$firstday +1 month -1 day"));
return array($firstday,$lastday);
}
$firstday が月の最初の日です。$date が 2014-2 の場合、$firstday は 2014-02-01 になります。$firstday に 1 か月を加算すると 2014-03-01 が得られ、1 日を減算すると 2014-02-01 になります。 2014. -02-28, date() と strtotime() を使うととても便利です。
先月の日付を取得します:
コードをコピーします コードは次のとおりです:
function getlastMonthDays($date){
$timestamp=strtotime($date);
$firstday=date('Y-m-01',strtotime(date) ('Y' ,$timestamp).'-'.(date('m',$timestamp)-1).'-01'));
$lastday=date('Y-m-d',strtotime("$初日 +1 か月 -1 日"));
return array($firstday,$lastday);
}
前月の日付を取得するには、まずタイムスタンプを取得してから、その月に -1 を追加する必要があります。これは、2014-0-1 を 2013-12-01 に変換します。とてもクールです。
来月の日付を取得:
コードをコピーします コードは次のとおりです:
function getNextMonthDays($date){
$timestamp=strtotime($date);
$arr=getdate($timestamp);
if($arr ['mon' ] == 12) {$ $ Year = $ arr [' Year'] +1;
$ Month = $ Arr ['Mon'] -01';
$lastday=date('Y-m -d',strtotime("$firstday +1 month -1 day"));
-01'; ('Y',$timestamp).'-'.(date('m',$timestamp)+1) .'-01'));
$lastday=date('Y-m-d',strtotime("$ firstday +1 month -1 day"));
}
return array($firstday,$lastday);
}
来月の日付のコードは少し長く見えます。 date() は 2014-13-01 のようなものを変換できず、直接 1970 年に戻るため、前部で 12 月の問題に対処する必要があります。 12月は直接月+1でOKです。
一般的に、非常に便利です。日付機能が強力すぎます。
http://www.bkjia.com/PHPjc/728082.html
www.bkjia.comtruehttp://www.bkjia.com/PHPjc/728082.html技術記事今日プログラムを書いていたら、昔書いた月の日数を取得する関数を発見しました。これは古典的なスイッチバージョンですが、前月の日数を取得するときに、月を-1変更しただけだと思います...