PHP で時間を正確に比較する方法: 包括的なガイド

Susan Sarandon
リリース: 2024-11-10 18:24:02
オリジナル
320 人が閲覧しました

How to Accurately Compare Times in PHP: A Comprehensive Guide

PHP 時間の比較: 総合ガイド

PHP では、時間の比較は簡単な作業ですが、そのニュアンスを理解することが重要です。予期しない結果を避けてください。

次のコードを考えてみましょう:

$ThatTime = "14:08:10";
$todaydate = date('Y-m-d');
$time_now = mktime(date('G'), date('i'), date('s'));
$NowisTime = date('G:i:s', $time_now);
if ($NowisTime >= $ThatTime) {
    echo "ok";
}
ログイン後にコピー

このコードは、現在時刻 ($NowisTime) と指定された時刻 ($ThatTime) を比較することを目的としています。ただし、期待した出力 (「ok」) は生成されません。

解決策

PHP で時間を正確に比較するには、いくつかの方法があります。

  • strtotime() の使用:

    $ThatTime = "14:08:10";
    if (time() >= strtotime($ThatTime)) {
        echo "ok";
    }
    ログイン後にコピー
  • DateTime の使用:

    $dateTime = new DateTime($ThatTime);
    if ($dateTime->diff(new DateTime)->format('%R') == '+') {
        echo "OK";
    }
    ログイン後にコピー

追加メモ

  • PHP での時間比較はタイムゾーンの影響を受けます。上記のソリューションは、この問題を軽減するために時間変換を処理します。
  • mktime() を使用する場合は、3 つのパラメーター (時、分、秒) がすべて有効であることを確認してください。無効な値を指定すると、時間の計算が不正確になる可能性があります。

これらのガイドラインに従うことで、PHP で時間を効果的に比較でき、コードが正確で信頼性の高い結果を生成するようになります。

以上がPHP で時間を正確に比較する方法: 包括的なガイドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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