現在時刻を表示しよう – date / date_default_timezone_set

メンバーシップ(月額 980円)になって、このページの動画を見よう

コンピューターは、内部に時計を持っているためPHPで現在の時刻を取得できます。ここでは、dateファンクションを使って現在時刻を画面に表示してみましょう。

次のようなプログラムを作成します。

<?php
echo date('G時 i分 s秒');

なお、ここではPHPの終了タグを省略していますが、これでも正しく動作します。これを実行すると、次のような時刻が表示され、再読み込みする度に時間が更新されます(現在時刻ではない事があります)。

dateファンクションは、「フォーマット」をパラメーターに指定できます。これは、英文字を1文字に対して日時が割り当てられているというもので、大文字の「G」は「時を24時間制」で、小文字の「i」は分を2桁(1桁の場合は先頭に0を入れる)でといった具合に、取得できます。すべてのパラメーターは、リファレンスをご確認ください。

戻り値を画面に表示しよう

dateファンクションは、それだけを実行しても画面には何の変化もありません。これは、dateファンクションがその結果を「戻り値」という形で取得できるためです。このようなファンクションの戻り値を画面に表示したい場合は、echoと組み合わせて次のように利用します。

<?php
echo date('G時 i分 s秒');

前回の記事と同様に、echoのパラメーターにクオーテーションをつけてしまうと、そのまま画面に表示されてしまいます。

<?php
echo "date('G時 i分 s秒')";

タイムゾーンを設定しよう

こうして時刻が表示されますが、実際の現在時刻とはずれているかも知れません。これは、時刻には「タイムゾーン」があり、例えば日本の場合は世界標準時から9時間ずれていますが、PHPの標準では世界標準時に設定されてしまっています。

そこで、タイムゾーンを変更しましょう。これには、date_default_timezone_setファンクションを利用します。次のようにプログラムを追記しましょう。

<?php
date_default_timezone_set('Asia/Tokyo');
echo date('G時 i分 s秒');

これで、正しい時間が表示されるようになります。

ともすたチャンネルに
チャンネル登録する