インターネットの急速な発展に伴い、Web 開発は人々の日常生活に不可欠な部分になりました。 Web 開発では、サーバー側で広く使用されているスクリプト言語として PHP がタイムスタンプを使用して時刻データを保存します。タイムスタンプとは、グリニッジ標準時(1970年1月1日0時0分0秒)から現在時刻までの秒数を指し、精度が高く、計算や表現が容易であるなどの理由から、コンピュータ分野で広く利用されています。
ただし、実際の開発では、ユーザーが読みやすく使用しやすいように、タイムスタンプをより読みやすい時刻形式に変換する必要があることがよくあります。この記事では、PHP でタイムスタンプを時刻に変換する方法を紹介します。
1. date() 関数を使用する
PHP の date() 関数は、タイムスタンプを文字列出力にフォーマットできます。その基本的な構文形式は次のとおりです:
date(string $format [, int $timestamp])
このうち、$format は必須の時刻形式であり、$timestamp はオプションのパラメータで、フォーマットされるタイムスタンプを示します。 2 番目の引数が省略された場合、date() 関数は現在時刻を使用します。
たとえば、次のコードはタイムスタンプを「年-月-日 時:分:秒」の形式に変換します:
$timestamp = time(); //获取当前时间戳 echo date('Y-m-d H:i:s', $timestamp); //输出格式化后的日期时间
2. strftime() 関数を使用します
date() 関数に加えて、PHP には strftime() 関数も用意されています。この関数は date() に似た書式設定された文字列を使用しますが、ローカライズされた日付と時刻の書式を使用できます。この関数の基本的な構文形式は次のとおりです。
strftime(string $format [, int $timestamp])
このうち、$format は必須の時刻形式であり、$timestamp はオプションのパラメータであり、形式設定されるタイムスタンプを示します。 2 番目のパラメータを省略した場合、strftime() 関数は現在時刻を使用します。
たとえば、次のコードはタイムスタンプを中国語の日付形式に変換します:
$timestamp = time(); //获取当前时间戳 setlocale(LC_TIME, 'zh_CN'); //设置区域语言为中文 echo strftime('%Y年%m月%d日 %H时%M分%S秒', $timestamp); //输出格式化后的日期时间
3. DateTime クラスを使用します
PHP 5.2 以降では DateTime クラスが提供されます。は、日付と時刻を処理する一連のメソッドを提供します。このうち、fromTimestamp() メソッドはタイムスタンプを DateTime オブジェクトに変換でき、format() メソッドは DateTime オブジェクトを指定した文字列にフォーマットできます。サンプル コードは次のとおりです。
$timestamp = time(); //获取当前时间戳 $datetime = DateTime::createFromFormat('U', $timestamp); //将时间戳转化为DateTime对象 echo $datetime->format('Y-m-d H:i:s'); //输出格式化后的日期时间
上記の 3 つのメソッドにより、タイムスタンプをより読みやすい時刻形式に変換できます。実際の開発ニーズに応じて適切な方法を選択する必要があります。この記事が、誰もが PHP タイムスタンプを学習し、時間に変換する方法を使用するのに役立つことを願っています。
以上がPHP でタイムスタンプを時刻に変換する方法を紹介する記事の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。