PHP の日付と時刻の処理テクニック

WBOY
リリース: 2023-05-11 12:24:02
オリジナル
1399 人が閲覧しました

インターネットの普及に伴い、Web アプリケーションの開発はますます注目を集めています。これらのアプリケーションでは、日付と時刻の処理テクノロジが非常に重要です。 PHP 開発では、日付と時刻の処理には、日付の書式設定、タイムゾーンの変換、タイムスタンプの処理など、多くの側面が含まれます。この記事では、PHPにおける日時処理技術を詳しく紹介します。

1. 日付と時刻の基本概念

PHP では、日付と時刻の処理は、組み込みの日付と時刻関数によって実現されます。これらの関数を使用する前に、日付と時刻の基本概念を理解しておく必要があります。

1. 日付: 通常、年、月、日で構成される日付値を指します。たとえば、2021 年 7 月 23 日などです。

2. 時間: 通常、時間、分、秒で構成される時間値を指します。たとえば、13:30:00。

3. 日付と時刻: 日付と時刻を組み合わせた値を指します。たとえば、2021 年 7 月 23 日 13:30:00 です。

4. タイム ゾーン: 地域によって時間が異なる場合があります。タイム ゾーンは、この問題を解決するために使用されるテクノロジーです。世界には多くのタイムゾーンがあり、さまざまな地域の時間を表すために使用されます。

2. PHP の日付と時刻の関数

1.date() 関数

date() 関数は、日付と時刻の書式設定に使用されます。基本的な構文は、date(format, timestamp) です。このうち、format は出力する日時の形式、timestamp はフォーマットするタイムスタンプを表し、指定しない場合はデフォルトで現在時刻が設定されます。

一般的に使用される日付と時刻の形式の一部を次に示します:

形式 | 説明

Y | 4 桁の年

y | 2 桁の年

m | 2 桁の月

n | 先頭のゼロなしの月

d | 2 桁の日

j | 先頭のゼロのある日付なし

H | 24 時間形式の時間

h | 12 時間形式の時間

i | 分

s | 秒

A | 大文字の AM または PM

a | 小文字の AM または PM

次は例です:

$date = date('Y-m-d H:i:s');
echo $date;
ログイン後にコピー

出力結果は次のとおりです: 2021- 07-23 14: 43:56

2.date_default_timezone_set() 関数

date_default_timezone_set() 関数は、デフォルトのタイムゾーンを設定するために使用されます。たとえば、タイムゾーンを北京時間に設定できます。コードは次のとおりです。

date_default_timezone_set('Asia/Shanghai');
ログイン後にコピー

3.time() 関数

time() 関数は、現在時刻のタイムスタンプを返します。タイムスタンプは、1970 年 1 月 1 日の 00:00:00 から現在までの秒数を表します。

echo time();
ログイン後にコピー

4.strtotime() 関数

strtotime 関数は、英語の日付文字列をタイムスタンプに変換します。たとえば、文字列「2021-07-23 14:43:56」をタイムスタンプに変換できます。コードは次のとおりです:

echo strtotime('2021-07-23 14:43:56');
ログイン後にコピー

5.date_diff() function

If 2 つの日付の差を見つけるには、date_diff 関数を使用できます。基本的な構文は date_diff(date1,date2) です。ここで、date1 と date2 は 2 つの日付/時間オブジェクトです。

次は例です:

$datetime1 = new DateTime('2021-07-23 14:43:56');
$datetime2 = new DateTime('2021-07-23 15:00:00');
$interval = date_diff($datetime1,$datetime2);
echo $interval->format('%H:%I:%S');
ログイン後にコピー

出力結果は次のとおりです: 00:16:04

6.date_add() および date_sub() 関数

If 日付を加算または減算する必要がある場合は、date_add 関数と date_sub 関数を使用できます。基本的な構文は、date_add(日付,間隔) および date_sub(日付,間隔) です。このうち、date は演算対象となる日付オブジェクトを表し、interval は加算または減算される時間間隔を表します。

次は例です:

$date = new DateTime('2021-07-23 14:43:56');
$date->add(new DateInterval('PT1H')); //加1小时
echo $date->format('Y-m-d H:i:s');
ログイン後にコピー

出力結果は次のとおりです: 2021-07-23 15:43:56

7.date_create() および date_create_from_format() 関数

date_create 関数は、DateTime オブジェクトを作成するために使用されます。基本的な構文は date_create(time, timezone) です。ここで、time は作成される日付と時刻を表し、timezone はタイムゾーンを表します。指定しない場合、デフォルトはタイムゾーン設定です。

date_create_from_format 関数は、指定された形式に従って DateTime オブジェクトを作成するために使用されます。基本的な構文は、date_create_from_format(format, time, timezone) です。このうち、format は受信日の形式、time は作成する日時、timezone はタイムゾーンを表し、指定しない場合はデフォルトでタイムゾーンの設定になります。

#次は例です:

$date1 = date_create('2021-07-23 14:43:56');
echo $date1->format('Y-m-d H:i:s'); 

$date2 = date_create_from_format('Y-m-d H:i:s', '2021-07-23 14:43:56');
echo $date2->format('Y-m-d H:i:s'); 
ログイン後にコピー

出力結果は次のとおりです: 2021-07-23 14:43:56

3. タイム ゾーンの設定

実際の開発において、タイムゾーンが異なる問題の場合はタイムゾーンを設定する必要があります。 PHP には、タイム ゾーンを設定するための関数がいくつか用意されています。

    date_default_timezone_set() 関数
  1. ini_set() 関数
  2. php.ini 設定ファイルで設定
  3. サーバー経由でタイム ゾーンを設定する
以下では、date_default_timezone_set() 関数を例として、タイム ゾーンの設定方法を紹介します:

date_default_timezone_set('Asia/Shanghai'); //将时区设置为上海
ログイン後にコピー
IV。概要

この記事では、日付の書式設定、タイムゾーンの変換、タイムスタンプの処理などを含む、PHP の日付と時刻の処理テクノロジを紹介します。実際の開発では、日付と時刻の処理に関するさまざまな問題に適切に対処するために、これらのテクノロジに習熟する必要があります。同時に、タイムゾーンの概念と設定方法も紹介し、クロスタイムゾーンアプリケーションの作成に役立ちます。

以上がPHP の日付と時刻の処理テクニックの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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