ホームページ > バックエンド開発 > PHPチュートリアル > PHP で 2 つの時間間隔を追加するには?

PHP で 2 つの時間間隔を追加するには?

Mary-Kate Olsen
リリース: 2024-11-04 02:51:02
オリジナル
243 人が閲覧しました

How to Add Two Time Intervals in PHP?

PHP で 2 つの時間間隔を追加します

PHP で、2 つの時間間隔の合計期間を計算し、時間単位で合計したいとします。分形式で表示する場合、これら 2 つの間隔を追加する必要があります。ただし、PHP の DateInterval クラスにはオーバーロードされた演算子がないため、直接追加することはできません。

これを実現するには、新しい DateTime オブジェクトを作成し、add() 関数を使用して 2 つの間隔を追加し、基準点からの時差を表示する必要があります。

<code class="php">$e = new DateTime('00:00');
$f = clone $e;
$e->add($interval1);
$e->add($interval2);
echo "Total interval: ", $f->diff($e)->format("%H:%I"), "\n";</code>
ログイン後にコピー

Fullコード例:

<code class="php">$a = new DateTime('14:25');
$b = new DateTime('17:30');
$interval1 = $a->diff($b);
echo "interval 1: ", $interval1->format("%H:%I"), "\n";

$c = new DateTime('08:00');
$d = new DateTime('13:00');
$interval2 = $c->diff($d);
echo "interval 2: ", $interval2->format("%H:%I"), "\n";

$e = new DateTime('00:00');
$f = clone $e;
$e->add($interval1);
$e->add($interval2);
echo "Total interval: ", $f->diff($e)->format("%H:%I"), "\n";</code>
ログイン後にコピー

もう 1 つの方法は、DateInterval クラスを拡張し、add() 関数をカスタマイズして合計時間を自分で計算することです:

<code class="php">class MyDateInterval extends DateInterval
{
    //...
}

$a = new DateTime('14:25');
$b = new DateTime('17:30');
$interval1 = $a->diff($b);
echo "interval 1: ", $interval1->format("%H:%I"), "\n";

$c = new DateTime('08:00');
$d = new DateTime('13:00');
$interval2 = $c->diff($d);
echo "interval 2: ", $interval2->format("%H:%I"), "\n";
            
$e = MyDateInterval::fromDateInterval($interval1);
$e->add($interval2);
echo "Total interval: ", $e->format("%H:%I"), "\n";</code>
ログイン後にコピー

これはカスタム時間を実装するだけですカスタム クラスの間隔メソッドを使用します。

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

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