英文形式の日付 / 時刻から Unix タイムスタンプを取得 - strtotime()
当ページのリンクには広告が含まれています。
プログラミング言語PHPで、英文形式の日付から Unix タイムスタンプを取得する関数 strtotime()を紹介します。
strtotime 関数
int strtotime ( string $time [, int $timestamp ] )
引数に指定した Unix タイムスタンプから指定した日付/時刻の数値を取得します。
引数 $time 日付 / 時刻を英文形式で指定します。英文形式については後述。 $timestamp 返す値を計算するための Unix タイムスタンプを指定します。デフォルトでは time() の値を使います。
返り値
取得した Unix タイムスタンプを返します。その他の場合は false を返します。
日付 / 時刻の英文形式
ここではよく利用される「日付 / 時刻の英文形式」の例を紹介します。
日付/時刻 | 2014-01-02 03:04:05 |
日付 | 12 July 2008 |
現在 | now |
明日 | tomorrow |
昨日 | yesterday |
1時間後 | +1 hour |
明日 | +1 day |
来週 | +1 week |
1ヵ月前 | -1 month |
次の月曜日 | next Monday |
前の月曜日 | last Monday |
サンプルコード
実際に英語形式から Unix タイムスタンプを取得してみましょう。
idate( 英文形式の日付/時刻 )
<?php echo strtotime("2014-01-02 03:04:05") . "\n"; echo strtotime("12 July 2008") . "\n"; echo strtotime("now") . "\n"; echo strtotime("tomorrow") . "\n"; echo strtotime("yesterday") . "\n"; echo strtotime("+1 hour") . "\n"; echo strtotime("+1 day") . "\n"; echo strtotime("+1 week") . "\n"; echo strtotime("-1 month") . "\n"; echo strtotime("next Monday") . "\n"; echo strtotime("last Monday") . "\n"; ?>
実行結果です。
1388599445 1215788400 1410766456 1410793200 1410620400 1410770056 1410852856 1411371256 1408088056 1411311600 1410102000
このように指定した英文形式の日付 / 時刻から Unix タイムスタンプを取得することができます。