ThinkPHP は、PHP をベースにしたオープンソースの Web アプリケーション フレームワークで、インターネットの発展に伴い、さまざまな分野で広く使用されています。 ThinkPHP を使用して Web アプリケーションを開発する場合、時刻形式は避けられません。この記事では、ThinkPHP で時刻形式を表示する方法を紹介します。
ThinkPHP では、より便利で効率的であるため、通常、時刻をタイムスタンプの形式で保存します。ただし、ページに時刻を表示する必要がある場合は、タイムスタンプを読み取り可能な形式の時刻に変換する必要があります。
ThinkPHP では、PHP の組み込み date() 関数を使用してタイムスタンプを時刻形式に変換できます。この関数には 2 つのパラメータが含まれています。最初のパラメータは時刻形式で、2 番目のパラメータは変換されるタイムスタンプです。
たとえば、現在のタイムスタンプを日付形式に変換する場合は、次のコードを使用できます:
echo date('Y-m-d H:i:s', time());
ここで、「Y-m-d H:i:s」は時間形式であり、 time() は現在のタイムスタンプです。
このコードは、現在の日付と時刻を「2021-09-22 14:30:00」の形式で出力します。必要に応じて時刻形式を変更できます。
ThinkPHP を使用する場合、通常、時刻フィールドをデータベースに保存します。これらの時間フィールドをページに表示したい場合は、フォーマットする必要があります。
簡単な方法は、モデルで getAttr() メソッドを使用することです。このメソッドは、データベース フィールドを読み取るときに自動的に呼び出されます。
たとえば、「create_time」という名前の時間フィールドがある場合、モデルで次のメソッドを定義できます。
public function getCreateTimeAttr($value) { return date('Y-m-d H:i:s', $value); }
このメソッドは、「create_time」フィールドのタイムスタンプを次のようにフォーマットします。標準の日付形式。このメソッドを使用した後、コントローラーでこのフィールドを呼び出すことができます。たとえば、
$user = UserModel::get($id); echo $user->create_time;
は時刻を「2021-09-22 15:00:00」の形式で出力します。
PHP Carbon は、日付と時刻を操作するためのより簡単かつ強力な方法を提供する PHP ライブラリです。 ThinkPHP では、PHP Carbon を使用して時刻をフォーマットすることもできます。
まず、Composer を通じてこの拡張機能をインストールする必要があります。次のコマンドを実行します:
composer require nesbot/carbon
インストールが完了したら、コード内で次のコードを使用できます:
use Carbon\Carbon; $now = Carbon::now('Asia/Shanghai'); echo $now->toDateTimeString();
このコードは現在の日付と時刻を出力し、「Asia/Shanghai」を使用します。 ' をタイムゾーンとして指定します。タイムゾーンと形式を変更できます。
PHP には、日付と時刻の操作に使用できる DateTime クラスも用意されています。 ThinkPHP では、このクラスを使用して時刻をフォーマットできます。
以下はサンプル コードです:
$dateStr = '2021-09-22 15:30:00'; $date = new DateTime($dateStr, new DateTimeZone('Asia/Shanghai')); echo $date->format('Y-m-d H:i:s');
このコードは時刻を「2021-09-22 15:30:00」の形式で出力します。
つまり、ThinkPHP で時刻形式を表示するのは非常に簡単です。 PHP の組み込み関数を使用するか、PHP Carbon または DateTime クラスを使用して、データベース内のタイムスタンプまたは時間フィールドを変換できます。
以上がThinkPHP で時刻形式を表示する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。