web関連

【PHP】年末の日時の取得方法

年度末の日時(○×△□年12月31日00時00分)を取得したかったときのメモ

年度末の日時を取得

// DateTimeクラスを使った場合
$lastday_p1 = new DateTime('last day of december this year');
echo $lastday_p1->format('Y年m月d日H時i分') . '<br>';

// date関数を使った場合
// mktime(時間、分、秒、月、日付、年)
$timestamp = mktime(0,0,0,1,0,date('Y',strtotime("+1 year")));
$lastday_p2 = date('Y年m月d日H時i分',$timestamp);
echo $lastday_p2 . '<br>';

// time関数を使った場合(タイムスタンプとして取得)
$lastday_p3 = time();// タイムスタンプとして現在時刻取得
$lastday_p3 = date('Y年m月d日H時i分',$lastday_p3);// タイムスタンプから出力用フォーマットへ変換
echo $lastday_p3 . '<br>';

// strtotime関数を使った場合(タイムスタンプとして取得)
$lastday_p4 = strtotime('last day of december this year');// タイムスタンプとして現在時刻取得
$lastday_p4 = date('Y年m月d日H時i分',$lastday_p4);// タイムスタンプから出力用フォーマットへ変換
echo $lastday_p4;
2020年12月31日00時00分
2020年12月31日00時00分
2020年11月30日20時48分(time関数)
2020年12月31日00時00分

time()は現在の日時をタイムスタンプとして取得するだけで、time関数だけで年度末の日時を取得するのは無理みたい

mktime()が少しややこしかったので別でまとめておく

その他リンク

Leave a Comment

入力エリアすべてが必須項目です。メールアドレスが公開されることはありません。

内容をご確認の上、送信してください。

CAPTCHA