'time()' による Unix タイムスタンプ
CoddyのPHPジャーニー「論理とフロー」セクションの一部 — レッスン 47/68。
Unixタイムスタンプは、特定の瞬間を単一の数値として表現する方法です。これは、Unixエポックとして知られる1970年1月1日00:00:00 UTCからの経過秒数をカウントします。この標準化されたシステムにより、コンピュータが日付や時刻を保存、比較、計算することが容易になります。
PHPは、現在のUnixタイムスタンプを取得するためのtime()関数を提供しています。この関数を呼び出すと、Unixエポックから現在時刻までの秒数が返されます。このタイムスタンプは、タイムゾーンに依存せず、異なるシステム間で日付を扱うための一貫した方法を提供するため、特に便利です。
<?php
$currentTimestamp = time();
echo $currentTimestamp; // 次のような内容を出力します: 1710515425
?>Unixタイムスタンプの素晴らしさは、先ほど学んだdate()関数と組み合わせることで明確になります。date()の第2引数としてタイムスタンプを渡すことで、現在時刻だけでなく、特定の任意の瞬間をフォーマットすることができます。これにより、アプリケーションで日付を扱うための強力な組み合わせが実現します。
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
チャレンジ
簡単1つの入力を受け取ります:数値としてのUnixタイムスタンプです。入力は特定の時点を表すタイムスタンプです(例:1710515425)。
タイムスタンプの入力を読み取り、date() 関数を使用してこのタイムスタンプを読み取り可能な日付と時刻にフォーマットし、その結果を Y-m-d H:i:s (年-月-日 時:分:秒) の形式で出力してください。
date() は、現在の時刻だけでなく、特定の時点をフォーマットするために第2引数としてタイムスタンプを受け取ることに注意してください。
入力形式: Unixタイムスタンプを数値として含む1行(例:1710515425)
期待される出力: Y-m-d H:i:s 形式でフォーマットされた日付と時刻
チートシート
Unixタイムスタンプは、1970年1月1日 00:00:00 UTC(Unixエポック)からの経過秒数として、特定の時点を表します。
現在のUnixタイムスタンプを取得するには、time()を使用します:
<?php
$currentTimestamp = time();
echo $currentTimestamp; // 次のような値を出力します: 1710515425
?>date()の第2引数にタイムスタンプを渡すことで、特定の時点をフォーマットできます:
date("Y-m-d H:i:s", $timestamp);日時の構成要素を指定して特定のタイムスタンプを作成するには、mktime()を使用します:
$timestamp = mktime(hour, minute, second, month, day, year);自分で試してみよう
<?php
// Unix タイムスタンプを読み込む
$timestamp = intval(fgets(STDIN));
// TODO: 以下に date() を使用してタイムスタンプをフォーマットするコードを記述してください
// フォーマットされた日付と時間を出力する
echo $formattedDate;
?>このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
論理とフローのすべてのレッスン
7日付と時刻の操作
'date()' 関数'time()' による Unix タイムスタンプDateTime オブジェクト入門DateTime オブジェクトのフォーマットDateTime オブジェクトの変更まとめ:日付の計算