ホームページ > バックエンド開発 > PHPの問題 > PHPでタイムスタンプを取得するにはどうすればよいですか?フォーマット方法は?

PHPでタイムスタンプを取得するにはどうすればよいですか?フォーマット方法は?

PHPz
リリース: 2023-03-21 17:32:01
オリジナル
2201 人が閲覧しました

PHP は、一般的に使用されるサーバーサイド スクリプト言語として、時間間隔の計算、時間形式の変換など、時間関連の操作を行うことがよくあります。タイムスタンプは、PHP における非常に重要な時刻表現方法の 1 つです。この記事では、PHP がタイムスタンプを取得する方法について詳しく説明します。

1. タイムスタンプとは何ですか?

タイムスタンプ (タイムスタンプ) は時間を表現する方法の 1 つで、1970 年 1 月 1 日の始まりを表す整数です。 0:00:00 (グリニッジ標準時) から現在時刻までの秒数。Unix タイムスタンプとも呼ばれます。タイムスタンプは、コンピュータ分野、特に Web 開発で広く使用されています。

PHP では、time() 関数を使用して現在のタイムスタンプを取得できます (例:

echo time(); // 输出当前时间戳,例如:1565949030
ログイン後にコピー

2)。指定した時刻のタイムスタンプを取得する方法

現在の時刻のタイムスタンプを取得することに加えて、特定の時刻、特定の日付などの指定された時刻のタイムスタンプも取得する必要があります。 PHP には、指定した時刻のタイムスタンプを取得するいくつかの方法が用意されています。

  1. mktime() 関数

mktime() 関数は、指定した日付のタイムスタンプを返すことができます。そのパラメータには、時、分、秒、月、日、年、その他の情報を含めることができます。例:

echo mktime(12, 30, 0, 8, 15, 2019); // 输出:1565857800
ログイン後にコピー

これは、2019 年 8 月 15 日 12:30 のタイムスタンプが 1565857800 であることを意味します。

  1. strtotime() 関数

strtotime() 関数は、英語テキストの日付と時刻の記述をタイムスタンプに変換できます。例:

echo strtotime('2019-08-15 12:30:00'); // 输出:1565857800
ログイン後にコピー

これは、渡されるパラメータの形式が異なることを除いて、mktime() 関数に似ています。

  1. DateTime クラス

PHP には、日付と時刻を便利に処理できる DateTime クラスも用意されています。 DateTime クラスを使用すると、まず DateTime オブジェクトを作成し、次にオブジェクトの format() メソッドを通じて指定された形式で時刻を取得し、次にオブジェクトの getTimestamp() メソッドを通じてタイムスタンプを取得できます。例:

$dateTime = new DateTime('2019-08-15 12:30:00');
echo $dateTime->format('Y-m-d H:i:s'); // 输出:2019-08-15 12:30:00
echo $dateTime->getTimestamp(); // 输出:1565857800
ログイン後にコピー

3. タイムスタンプのフォーマット方法

タイムスタンプは通常、人間が判読できる形式に準拠していないため、表示するときにタイムスタンプをフォーマットする必要があります。 the time 読み取り可能な日付/時刻文字列に変換します。 PHP には、時刻の書式設定に使用できる date() 関数があります。

date() 関数の最初のパラメーターは書式文字列で、さまざまな時間部分を表すさまざまな識別子を含めることができます。たとえば、一般的な識別子は次のとおりです。

  • Y: 4 桁の年
  • m: 2 桁の月
  • d: 2 桁の日付
  • H: 時 2 桁 (24 時間制)
  • i: 分 2 桁
  • s: 秒 2 桁

例:タイムスタンプを年-月-日の形式でフォーマットします:

echo date('Y-m-d', time()); // 输出:2019-08-16
ログイン後にコピー

2 番目のパラメータはオプションです。渡されない場合、デフォルトで現在のタイムスタンプが使用されます。

4. タイムスタンプに指定した時間間隔を加算または減算する方法

実際の開発では、指定したタイムスタンプからいくつかの時間間隔を加算または減算することが必要になることがよくあります。たとえば、1 時間、1 日、1 か月などです。 PHP で strtotime() 関数を使用すると、この機能を実現できます。

strtotime() 関数の最初のパラメータはタイムスタンプ、2 番目のパラメータは時間間隔で、時間を表す任意の文字列を使用できます。たとえば、現在のタイムスタンプに 1 時間を追加して、読み取り可能な日付と時刻を出力します。

$timestamp = time() + 3600; // 在当前时间戳中加上一小时的时间间隔
echo date('Y-m-d H:i:s', $timestamp); // 输出增加一小时后的日期时间
ログイン後にコピー

相対時間形式を使用することもできます。たとえば、

$timestamp = strtotime('+1 day', time()); // 在当前时间戳中加上一天的时间间隔
echo date('Y-m-d H:i:s', $timestamp); // 输出增加一天后的日期时间
ログイン後にコピー

strtotime() 関数は次のようにすることもできます。 used 2 つのタイムスタンプ間の日数の差を計算するなど、時間間隔を計算するために使用されます:

$timestamp1 = strtotime('2019-08-15');
$timestamp2 = strtotime('2019-08-20');
$days = ($timestamp2 - $timestamp1) / (60 * 60 * 24);
echo $days; // 输出5
ログイン後にコピー

5. 概要

この記事では、タイムスタンプを取得する方法について説明しました。 、指定した時刻にタイムスタンプを取得する方法、タイムスタンプをフォーマットする方法、タイムスタンプに時間間隔を加算または減算する方法。タイムスタンプは、Web 開発で非常に一般的に使用される時間表現方法であり、関連する知識を習得すると、開発効率が大幅に向上します。

以上がPHPでタイムスタンプを取得するにはどうすればよいですか?フォーマット方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート