「strtotime」関数は、PHPの組み込み関数の1つで、UNIXタイムスタンプ形式の日付文字列を扱うために使用されます。
この関数は、文字列で表される日付を、UNIXタイムスタンプ(1970年1月1日午前0時からの秒数)に変換することができます。
また、UNIXタイムスタンプを指定した日付文字列に変換することもできます。
「strtotime」関数は、引数として文字列を受け取ります。
この文字列は、日付または時間の表現を含んでいる必要があります。
指定された文字列を解析し、UNIXタイムスタンプに変換します。
変換されたUNIXタイムスタンプは、数値として返されます。
以下は、UNIXタイムスタンプを取得する例です。
strtotime関数を使ってサンプルプログラムで確認してみましょう
<?php
// unixtimestamp
$timestamp = 1686064200;
// unixtimestampを日付に戻します
$dateString = date("Y-m-d H:i:s", $timestamp);
echo $dateString; // 2023-03-21 15:30:00
?>
<?php
$timestamp = strtotime("2023-03-21 15:30:00");
echo $timestamp; // 1686064200
?>
strtotime 引数一覧
PHPのstrtotime()関数には、多くの種類の引数が渡せます。
以下は、いくつかの一般的な引数のリストです。
| フォーマット | 補足 | |
| 年 | +-n years | 年をn分加算、減算 |
| 月 | +-n months | 月をn分加算、減算 |
| 日 | +-n days | 日をn分加算、減算 |
| 曜日 | +-n weeks | 週をn分加算、減算 |
| 時 | +-n hours | 時間をn分加算、減算 |
| 分 | +-n minutes | 分をn分加算、減算 |
| 秒 | +-n seconds | 秒をn分加算、減算 |
| 複合 | +1 years +1 months + 1 days | 年、月、日を加算、減算 |
| first day of 2023-10 | 2023-10-01 月初 | |
| last day of 2023-01 | 2023-01-31 月末 |
