menu
ホーム > PHPサンプル > 日付系 > PHP strtotime()/DateTimeクラス が理解できる【英文形式の日付/時刻フォーマット文字列(書式)】
PHPサンプル

UPDATE:2019年06月27日

PHP strtotime()/DateTimeクラス が理解できる【英文形式の日付/時刻フォーマット文字列(書式)】

PHP strtotime()/DateTimeクラス が理解できる【英文形式の日付/時刻フォーマット文字列(書式)】 | wepicks!
PHP5 PHP7


英文形式の日付/時刻フォーマット(書式)文字列

strtotime()関数DateTimeクラス が理解する 英文形式の日付や時刻のフォーマット(書式)文字列の表記方法は数多くあります。

日付の英文形式フォーマット文字列の例

'now'
'today'
'yesterday'
'tomorrow'
'this week'
'last week'
'next week'
'first day of this month'

時刻の英文形式フォーマット文字列の例

'+1 hours +1 min +1 seconds'
'-1 hours -1 min -1 seconds'

日時のフォーマット文字列の例

'now +1 seconds +1 min +1 hours +1 day +1 week +1 month +1 year'
'yesterday -1 seconds -1 min -1 hours -1 day -1 week -1 month -1 year'

strtotime()関数 や DateTimeクラス はさらに多くの英文形式の日付や時刻のフォーマット文字列を読み込むことが出来ます。それらのルールや書式を紹介します。

strtotime() が読み込める 英文形式のフォーマット文字列

strtotime() 英文形式フォーマット文字列

英文形式フォーマットで指定した日時のUNIXタイムスタンプを取得します。
※UNIXタイムスタンプは、1970年1月1日00時00分00秒UTC(協定世界時と一致する標準時)らの経過秒数です。例えば2019年5月15日1時34分25秒のUNIXタイムスタンプは 1557851665 となります。
戻り値の例やサンプルの結果は 2019-01-01 00:00:00 に実行した場合のものです。
取得内容英文形式のフォーマット文字列内容戻り値の例
今現在now今現在のUNIXタイムスタンプ1546268400
<?php echo strtotime("now");//1546268400 ?>
<?php echo date('Y-m-d H:i:s', strtotime('now'));//2019-01-01 00:00:00 ?>
本日today本日のUNIXタイムスタンプ1546268400
<?php echo strtotime("today");//1546268400 ?>
<?php echo date('Y-m-d', strtotime('today'));//2019-01-01 ?>
昨日yesterday昨日のUNIXタイムスタンプ1546182000
<?php echo strtotime("yesterday");//1546182000 ?>
<?php echo date('Y-m-d', strtotime('yesterday'));//2018-12-31 ?>
明日tomorrow明日のUNIXタイムスタンプ1546354800
<?php echo strtotime("tomorrow");//1546354800 ?>
<?php echo date('Y-m-d', strtotime('tomorrow'));//2019-01-02 ?>
今週this week今週の月曜日のUNIXタイムスタンプ1546182000
<?php echo strtotime("this week");//1546182000 ?>
<?php echo date('Y-m-d', strtotime('this week'));//2018-12-31 ?>
先週last week先週の月曜日のUNIXタイムスタンプ1545577200
<?php echo strtotime("last week");//1545577200 ?>
<?php echo date('Y-m-d', strtotime('last week'));//2018-12-24 ?>
来週next week来週の月曜日のUNIXタイムスタンプ1546786800
<?php echo strtotime("next week");//1546786800 ?>
<?php echo date('Y-m-d', strtotime('next week'));//2019-01-07 ?>
今月this month今月の同日のUNIXタイムスタンプ1546268400
<?php echo strtotime("this month");//1546268400 ?>
<?php echo date('Y-m-d', strtotime('this month'));//2019-01-01 ?>
先月last month先月の同日のUNIXタイムスタンプ1543590000
<?php echo strtotime("last month");//1543590000 ?>
<?php echo date('Y-m-d', strtotime('last month'));//2018-12-01 ?>
来月next month来月の同日のUNIXタイムスタンプ1548946800
<?php echo strtotime("next month");//1548946800 ?>
<?php echo date('Y-m-d', strtotime('next month'));//2019-02-01 ?>
今年this year今年の同日のUNIXタイムスタンプ1546268400
<?php echo strtotime("this year");//1546268400 ?>
<?php echo date('Y-m-d', strtotime('this year'));//2019-01-01 ?>
去年last year去年の同日のUNIXタイムスタンプ1514732400
<?php echo strtotime("last year");//1514732400 ?>
<?php echo date('Y-m-d', strtotime('last year'));//2018-01-01 ?>
来年next year来年の同日のUNIXタイムスタンプ1577804400
<?php echo strtotime("next year");//1577804400 ?>
<?php echo date('Y-m-d', strtotime('next year'));//2020-01-01 ?>
指定日付1 January 2019指定日付のUNIXタイムスタンプ1546268400
<?php echo strtotime("1 January 2019");//1546268400 ?>
<?php echo date('Y-m-d', strtotime("1 January 2019"));//2019-01-01 ?>
指定日時2019-01-02 03:04:05指定日時のUNIXタイムスタンプ1546365845
<?php strtotime('2019-01-02 03:04:05');//1546365845 ?>
<?php date('Y-m-d H:i:s', strtotime('2019-01-02 03:04:05'));//2019-01-02 03:04:05 ?>
本日から 年 月 日 週 を加算 (+ 省略可/- も可)+1 day +1 week +1 month +1 year年 月 日 週 の + - 指定のUNIXタイムスタンプ1581174000
<?php echo strtotime("+1 day +1 week +1 month +1 year");//1581174000 ?>
<?php echo date('Y-m-d', strtotime('+1 day +1 week +1 month +1 year'));//2020-02-09 ?>
今から+1時間1分1秒 (+ 省略可/- も可)+1 hours +1 min +1 seconds時、分、秒 の + - 指定のUNIXタイムスタンプ1546272061
<?php echo strtotime("+1 hours +1 min +1 seconds");//1546272061 ?>
<?php echo date('Y-m-d H:i:s', strtotime('+1 hours +1 min +1 seconds'));//2019-01-01 01:01:01 ?>
次の木曜日Thursday
next Thursday
次の木曜日のUNIXタイムスタンプ1546441200
<?php echo strtotime("Thursday");//1546441200 ?>
<?php date('Y-m-d', strtotime("Thursday"));//2019-01-03 ?>
前の木曜日last Thursday前の木曜日のUNIXタイムスタンプ1545836400
<?php echo strtotime("last Thursday");//1545836400 ?>
<?php date('Y-m-d', strtotime("last Thursday"));//2018-12-27 ?>
月の最初の日first day of this month指定月の最初の日のUNIXタイムスタンプ1546268400
<?php echo strtotime("first day of this month");//1546268400 ?>
<?php echo date('Y-m-d', strtotime("first day of this month"));//2019-01-01 ?>
月の最後の日last day of this month指定月の最後の日のUNIXタイムスタンプ1548860400
<?php echo strtotime("last day of this month");//1548860400 ?>
<?php echo date('Y-m-d', strtotime("last day of this month"));//2019-01-31 ?>
指定日から + -2020-01-01 00:00:00 +1 seconds +1 min +1 hours +1 day +1 week +1 month +1 year指定日から + - したUNIXタイムスタンプ1612800061
<?php
$format = '2020-01-01 00:00:00 +1 seconds +1 min +1 hours +1 day +1 week +1 month +1 year';
echo strtotime($format);//1612800061
echo date('Y-m-d H:i:s', strtotime($format));//2021-02-09 01:01:01
?>

DateTimeクラス が読み込める 英文形式のフォーマット文字列

DateTimeクラス 英文形式フォーマット文字列

DateTimeクラスを呼び出す際に、英文形式フォーマット文字列で日時を指定することが出来ます。指定した日時に合わせたオブジェクトが作成されます。
出力内容はサンプルの結果は 2019-01-01 00:00:00 に実行した場合のものです。
取得内容英文形式のフォーマット文字列内容出力内容
今現在now今現在の日時のオブジェクト2019-01-01 00:00:00
<?php
$objDateTime = new DateTime('now');
echo $objDateTime->format('Y-m-d H:i:s');//出力 2019-01-01 00:00:00
?>
本日today本日の日時のオブジェクト2019-01-01 00:00:00
<?php
$objDateTime = new DateTime('today');
echo $objDateTime->format('Y-m-d H:i:s');//出力 2019-01-01 00:00:00
?>
昨日yesterday昨日の日時のオブジェクト2018-12-31 00:00:00
<?php
$objDateTime = new DateTime('yesterday');
echo $objDateTime->format('Y-m-d H:i:s');//出力 2018-12-31 00:00:00
?>
明日tomorrow明日の日時のオブジェクト2019-01-02 00:00:00
<?php
$objDateTime = new DateTime('tomorrow');
echo $objDateTime->format('Y-m-d H:i:s');//出力 2019-01-02 00:00:00
?>
今週this week今週の月曜日の日時のオブジェクト2018-12-31 00:00:00
<?php
$objDateTime = new DateTime('this week');
echo $objDateTime->format('Y-m-d H:i:s');//出力 2018-12-31 00:00:00
?>
先週last week先週の月曜日の日時のオブジェクト2018-12-24 00:00:00
<?php
$objDateTime = new DateTime('last week');
echo $objDateTime->format('Y-m-d H:i:s');//出力 2018-12-24 00:00:00
?>
来週next week来週の月曜日の日時のオブジェクト2019-01-07 00:00:00
<?php
$objDateTime = new DateTime('next week');
echo $objDateTime->format('Y-m-d H:i:s');//出力 2019-01-07 00:00:00
?>
今月this month今月の同日の日時のオブジェクト2019-01-01 00:00:00
<?php
$objDateTime = new DateTime('this month');
echo $objDateTime->format('Y-m-d H:i:s');//出力 2019-01-01 00:00:00
?>
先月last month先月の同日の日時のオブジェクト2018-12-01 00:00:00
<?php
$objDateTime = new DateTime('last month');
echo $objDateTime->format('Y-m-d H:i:s');//出力 2018-12-01 00:00:00
?>
来月next month来月の同日の日時のオブジェクト2019-02-01 00:00:00
<?php
$objDateTime = new DateTime('next month');
echo $objDateTime->format('Y-m-d H:i:s');//出力 2019-02-01 00:00:00
?>
今年this year今年の同日の日時のオブジェクト2019-01-01 00:00:00
<?php
$objDateTime = new DateTime('this year');
echo $objDateTime->format('Y-m-d H:i:s');//出力 2019-01-01 00:00:00
?>
去年last year去年の同日の日時のオブジェクト2018-01-01 00:00:00
<?php
$objDateTime = new DateTime('last year');
echo $objDateTime->format('Y-m-d H:i:s');//出力 2018-01-01 00:00:00
?>
来年next year来年の同日の日時のオブジェクト2020-01-01 00:00:00
<?php
$objDateTime = new DateTime('next year');
echo $objDateTime->format('Y-m-d H:i:s');//出力 2020-01-01 00:00:00
?>
指定日付1 January 2019指定日付の日時のオブジェクト2019-01-01 00:00:00
<?php
$objDateTime = new DateTime('1 January 2019');
echo $objDateTime->format('Y-m-d H:i:s');//出力 2019-01-01 00:00:00
?>
指定日時2019-01-02 03:04:05指定日時の日時のオブジェクト2019-01-02 03:04:05
<?php
$objDateTime = new DateTime('2019-01-02 03:04:05');
echo $objDateTime->format('Y-m-d H:i:s');//出力 2019-01-02 03:04:05
?>
本日から 年 月 日 週 を加算 (+ 省略可/- も可)+1 day +1 week +1 month +1 year年 月 日 週 の + - 指定の日時のオブジェクト2020-02-09 00:00:00
<?php
$objDateTime = new DateTime('+1 day +1 week +1 month +1 year');
echo $objDateTime->format('Y-m-d H:i:s');//出力 2020-02-09 00:00:00
?>
今から+1時間1分1秒 (+ 省略可/- も可)+1 hours +1 min +1 seconds時、分、秒 の + - 指定の日時のオブジェクト2019-01-01 01:01:01
<?php
$objDateTime = new DateTime('+1 hours +1 min +1 seconds');
echo $objDateTime->format('Y-m-d H:i:s');//出力 2019-01-01 01:01:01
?>
次の木曜日Thursday
next Thursday
次の木曜日の日時のオブジェクト2019-01-03 00:00:00
<?php
$objDateTime = new DateTime('Thursday');
echo $objDateTime->format('Y-m-d H:i:s');//出力 2019-01-03 00:00:00
?>
<?php
$objDateTime = new DateTime('next Thursday');
echo $objDateTime->format('Y-m-d H:i:s');//出力 2019-01-03 00:00:00
?>
前の木曜日last Thursday前の木曜日の日時のオブジェクト2018-12-27 00:00:00
<?php
$objDateTime = new DateTime('last Thursday');
echo $objDateTime->format('Y-m-d H:i:s');//出力 2018-12-27 00:00:00
?>
月の最初の日first day of this month指定月の最初の日の日時のオブジェクト2019-01-01 00:00:00
<?php
$objDateTime = new DateTime('first day of this month');
echo $objDateTime->format('Y-m-d H:i:s');//出力 2019-01-01 00:00:00
?>
月の最後の日last day of this month指定月の最後の日の日時のオブジェクト2019-01-31 00:00:00
<?php
$objDateTime = new DateTime('last day of this month');
echo $objDateTime->format('Y-m-d H:i:s');//出力 2019-01-31 00:00:00
?>
指定日から + -2020-01-01 00:00:00 +1 seconds +1 min +1 hours +1 day +1 week +1 month +1 year指定日から + - した日時のオブジェクト2021-02-09 01:01:01
<?php
$objDateTime = new DateTime('2020-01-01 00:00:00 +1 seconds +1 min +1 hours +1 day +1 week +1 month +1 year');
echo $objDateTime->format('Y-m-d H:i:s');//出力 2021-02-09 01:01:01
?>

タグ(=記事関連ワード)

タグ: ,

日付

投稿日:2019年6月11日
最終更新日:2019年06月27日

このカテゴリの他のページ

menu-page

この記事へのコメント

トラックバックurl

https://wepicks.net/phpsample-date-english_format/trackback/

page top