ホームページ  >  記事  >  バックエンド開発  >  PHPで指定した時間に分を追加します

PHPで指定した時間に分を追加します

WBOY
WBOYオリジナル
2023-05-23 09:13:062301ブラウズ

PHP 開発プロセスでは、時間の操作が必要なシナリオに遭遇することがよくあります。その中には、未来または過去の特定の時点を取得するために、時間に特定の分を加算する必要がある場合があります。この記事では、PHPで時間増分分を指定する方法と実装方法、注意点を紹介します。

1. 指定した時刻に分を加算する方法

PHP では、さまざまな方法を使用して、指定した時刻に分を加算できます。一般的に使用される方法のいくつかを以下に示します。

1. date() 関数を使用する

date() 関数は、PHP で日付と時刻をフォーマットするために使用される関数の 1 つです。その形式は次のとおりです:

date ( format, timestamp)

このうち、format パラメータは日付と時刻のフォーマット文字列を表し、timestamp パラメータはフォーマットする必要があるタイムスタンプを表します。 strtotime() 関数を使用すると、通常の日時書式文字列をタイムスタンプに変換できます。具体的な使用法は次のとおりです。

$timestamp=strtotime('2021-10-15 10:20:00');
$new_timestamp=$timestamp 10*60;
$new_time= date( 'Y-m-d H:i:s',$new_timestamp);
echo $new_time;

上記のコードでは、まず strtotime() 関数を使用して文字列 '2021-10-15 を変換します。 10:20 :00' をタイムスタンプ $timestamp に追加し、それに 10 分 (つまり、10*60 秒) を追加して、新しい日付時刻形式文字列 $new_time に形式設定します。

2. DateTime() クラスを使用する

DateTime() クラスは、PHP で日付と時刻の情報をカプセル化するために使用されるクラスの 1 つであり、そのコンストラクターは日付と時刻の形式文字列を受け入れることができます。または入力パラメータとしてのタイムスタンプ。日付と時刻の書式文字列を使用する場合、DateTime() クラスで正しく解析できるように、「Y-m-d H:i:s」形式に書式設定する必要があります。利用方法は以下の通りです。

$date=new DateTime('2021-10-15 10:20:00');
$date->add(new DateInterval('PT10M') );
$new_time=$date->format('Y-m-d H:i:s');
echo $new_time;

上記のコードでは、最初に DateTime() クラスを使用します。文字列「2021-10-15 10:20:00」を日付と時刻オブジェクト $date に解析し、add() メソッドを使用してそれに 10 分を追加し、次を使用して新しい日付と時刻にフォーマットします。 format() メソッド 文字列 $new_time をフォーマットします。

3. strtotime() 関数と date() 関数の組み合わせを使用する

上記の 2 つの方法に加えて、strtotime() 関数と date() 関数を組み合わせて使用​​することもできます。指定時間を実現する機能 運転分を加算します。具体的な使用方法は次のとおりです。

$time=date('Y-m-d H:i:s',strtotime(" 10 minutes",strtotime('2021-10-15 10:20:00')) );
echo $time;

上記のコードでは、まず strtotime() 関数を使用して文字列 '2021-10-15 10:20:00' をタイムスタンプに解析してから、次を使用します。 strtotime( ) 関数はこれに 10 分を追加し、date() 関数を使用して新しい日付/時刻形式文字列 $time に形式設定します。

2. 注意事項

時間操作を実行するときは、次の点に注意する必要があります:

1. タイムゾーンの問題: PHP で使用されるデフォルトのタイムゾーンは次のとおりです。 UTC 時間、および現地時間ではありません。現地時間を使用する必要がある場合は、date_default_timezone_set() 関数を設定して、PHP スクリプトでタイムゾーンを設定する必要があります。たとえば、中国の東 8 区のタイム ゾーンを使用する場合は、次のコードを使用できます:

date_default_timezone_set('Asia/Shanghai');

2. 時刻形式の問題: を使用する場合日付と時刻の文字列またはオブジェクト 時刻操作を実行するときは、予期しないエラーを避けるために、それらが正しくフォーマットされていることを確認する必要があります。特に、date() 関数を使用する場合は、その日付と時刻の形式文字列が正確であることに注意する必要があります。

3. クロック ロールバックの問題: クロック ロールバック タイム ポイントにまたがる時間操作を実行する場合は、特別な注意が必要です。時計を戻している状態で時刻操作を行うと、時刻に誤差が生じる場合があります。現時点では、timestamp 関数と date() 関数を使用する代わりに、DateTime() クラスを使用する必要があります。

3. まとめ

この記事では、PHPで指定した時刻に分を加算する方法と注意点を紹介します。通常、このような操作は、date() 関数、DateTime() クラス、または strtotime() 関数と date() 関数の組み合わせを使用して実行できます。ただし、使用する場合は、エラーを避けるためにタイムゾーンや時間形式などの問題に注意する必要があります。

以上がPHPで指定した時間に分を追加しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。