strtotime()
ストゥートゥータイム(データ操作と変換)
意味 日付文字列をタイムスタンプに
strtotime()とは?
strtotime()関数は、日付を表す文字列をUNIXタイムスタンプ(秒)に変換する関数です。英語の日付表現や相対的な時間表現('next Monday'、'+1 week'など)も理解でき、柔軟な日付処理が可能です。
strtotime()の具体的な使い方
次の月曜日の取得例
<?php
$timestamp = strtotime('next Monday');
echo date('Y-m-d', $timestamp);
👇出力結果
2023-06-05
この例では、'next Monday'(次の月曜日)のタイムスタンプを取得し、それをdate()関数で年-月-日形式に変換しています。実行時の日付によって結果は変わります。
相対的な日時計算例
<?php
$future = strtotime('+2 weeks 3 days 1 hour');
$past = strtotime('-1 month');
echo "2週間3日1時間後: " . date('Y-m-d H:i:s', $future) . "\n";
echo "1ヶ月前: " . date('Y-m-d', $past);
👇出力結果
2週間3日1時間後: 2023-06-18 11:30:00
1ヶ月前: 2023-05-01
この例では、strtotime()を使って現在の日時から相対的な未来と過去の日時を計算しています。柔軟な日時表現が可能です。
日付文字列のパース例
<?php
$date1 = strtotime('2023-12-31');
$date2 = strtotime('last day of December 2023');
if ($date1 === $date2) {
echo "同じ日付です:" . date('Y-m-d', $date1);
} else {
echo "異なる日付です";
}
👇出力結果
同じ日付です:2023-12-31
この例では、異なる形式で表現された同じ日付をstrtotime()でパースし、比較しています。strtotime()が様々な日付形式を理解できることを示しています。
strtotime()に関するよくある質問
strtotime()が学べる書籍の紹介
「プログラミング単語帳」を使って、プログラミングの単語を英単語のように学習してみませんか?
プログラミング単語帳には、PHPのstrtotime()やstrlen()、mb_substr()、date_add()、などのような実務でよく使われる単語が数百以上収録されています。
この書籍には、プログラミングの単語の意味や読み方、単語の使い方がわかる例文などが掲載されており、いつでもどこでもプログラミングの学習ができます。
よく使われる単語にだけ絞って学習することができるので、効率的にプログラミングが学習できます。
HTML編、CSS編、JavaScript編、PHP編、Ruby編、その他単語編の6シリーズ分が公式ストアにて販売中です。気になった方はぜひ購入してみてください。
PHPを学べる「プログラミング単語帳」アプリ
プログラミング単語帳がアプリになりました!PHPはもちろん、10種類のプログラミング言語の中から、よく使われる単語をスマホで学習できます。
収録単語は2,000単語以上!
現在は、HTML、CSS、JavaScirpt、PHP、Laravel、Ruby、Python、MySQL、Linux、など10カテゴリーの単語帳が1つのアプリに収録されています。
いつでも、どこでも、隙間時間を有効活用して、プログラミングを効率的に学べるので、ぜひダウンロードしてみてください。
2024年7月アップデート情報:「Laravel」カテゴリーが追加されましました!
2024年8月アップデート情報:「MySQL」「Linux」カテゴリーが追加されましました!