作成
PHPで日付・時間の操作(現在日時・月末日・うるう年など)
###memo PHPでの現在日時の取得は date関数を用い、年月日、時刻、曜日などは書式を指定することで整形することができます。 ###memo また、30日後の年月日を調べなどする場合は mktime関数を を用い、タイムスタンプ取得してdate関数の引数とします。 ###title 現在日時を取得 ###source print date("Y/m/d H:i:s") ; ###ret 2012/02/08 11:37:40 ###title3 現在日 ###source print date("Y/m/d") ; ###ret 2012/02/08 ###title3 現在時刻 ###source print date("H:i:s") ; ###ret 11:37:40 ###title 30分後の時間を取得 ###source $t1 = time()+60*30 ; print date("H:i:s", $t1) ; ###ret 12:07:40 ###title 1日後の日付を取得 ###source $t1 = time()+60*60*24 ; print date("Y/m/d", $t1) ; ###ret 2012/02/09 ###title 月の日数・月末日を取得 ###source $t1 = time() ; print date("t", $t1) ; ###ret 29 ###source $dt = mktime(0, 0, 0, 3, 0, 2012) ; print date("d", $dt) ; ###ret 29 ###title 年初めからの通算日を取得("z") ###source $t1 = time() ; print date("z", $t1) ; ###ret 39 ###title 曜日 ###title3 曜日を英語で取得("D") ###source $t1 = time() ; print date("D", $t1) ; ###ret Wed ###title3 曜日を英語(フルスペル)で取得("l") ###source print date("l") ; ###ret Wednesday ###title3 曜日を数値で取得("w") ###source $t1 = time()+60*60*24 ; print date("w") ; ###ret 3 ###title 月 ###title3 月を英語で表示する ###source print date("M") ; ###ret Feb ###title3 月を英語(フルスペル)で表示する ###source print date("F") ; ###ret February ###title 30日後の日付を取得 ###source $t1 = time()+60*60*24*30 ; print date("Y/m/d", $t1) ; ###ret 2012/03/09 ###title 指定日の日時を取得 ###source $t1 = mktime(10, 15, 20, 12, 31, 2011); print date("Y/m/d H:i:s", $t1) ; ###ret 2011/12/31 10:15:20 ###title3 指定日の日付と曜日を取得 ###source $t1 = mktime(0, 0, 0, 31, 12, 2011); print date("Y/m/d l", $t1) ; ###ret 2011/12/31 Saturday ###title その他の書式 ###title3 年月日の0埋めをなくす ###source print date("Y/n/j (D)") ; 2012/2/8 (Wed) ###title3 AM/PM を表示 ###source $t1 = time() ; print date("A h:i:s", $t1) ; ###ret PM 02:18:14 ###title 日付の妥当性チェック ###source $c1 = checkdate(2, 29, 2012); //有効な年月日 $c2 = checkdate(2, 30, 2012); //不正な年月日 ###ret c1 は trueに、$c2 は false ###title うるう年(閏年)の判定 ###source (方法1) $c1 = checkdate(2, 29, 2012); //2012年はうるう年 $c2 = checkdate(2, 29, 2013); ###ret $c1 は trueに、$c2 は false ###source (方法2) $dt = mktime(0, 0, 0, 2, 1, 2012) ; // うるう年 $c1 = date("L", $dt) ; $dt = mktime(0, 0, 0, 2, 1, 2013) ; $c2 = date("L", $dt) ; ###ret $c1 は trueに、$c2 は false ###title3 うるう年とは ###memo うるう年は以下のように計算されるようです。 ###list2 - 西暦年が4で割り切れる年は #*#うるう年 - 西暦年が100で割り切れる年は #*#平年 - 西暦年が400で割り切れる年は #*#うるう年 ###title 日付・時刻を連想配列にして取得する ###dl - 書式 -- $array = getdate([int timestamp]) - 備考 -- 日時を連想配列で取得します。タイムスタンプを指定可能ですが、省略した場合は現在日時となります。 - 引数 -- timestamp 取得の対象となる日時 - 返り値 -- 各値が格納された連想配列 ###source $dt = getdate() ; print_r($dt); ###memo Array ( [seconds] => 45 [minutes] => 5 [hours] => 21 [mday] => 8 [wday] => 3 [mon] => 2 [year] => 2012 [yday] => 38 [weekday] => Wednesday [month] => February [0] => 1328702745 )
wakatta 記法
投稿の仕方
基本的な記法
エンジニア向け記法
記法のサンプル
このコンテンツを見る