2016-12-11 5 views
0

私の要件:そう3 比較が倍

をエコー

  • 10エコー19時30分00秒の間で午前8時00分00秒

    • を時間があるかどうかはどのようにすべきこれらの要件を満たすように自分のコードを変更しますか?

      DEMO:新しい日の開始時https://3v4l.org/tpauu

      <?php 
      
      //$today_dt = new DateTime(date("H:i:s")); 
      //$today_dt = new DateTime(date("01:00:00")); **** Different result!! 
      $today_dt = new DateTime(date("01:00:00")); //**** Different result!! 
      $expire_dt1 = new DateTime(date("19:30:00")); 
      $expire_dt2 = new DateTime(date("08:00:00")); 
      if ($today_dt < $expire_dt1 && $today_dt < $expire_dt2){ 
          $DateEnd = strtotime(date('10:30:00')); 
          echo '10'; 
      }else{ 
          $DateEnd = strtotime(date('H:i:s')." +3 hour"); 
          echo '3'; 
      } 
      echo '<br>'.date('H:i:s',$DateEnd); 
      
      ?> 
      
    +0

    変更 '$ today_dt> $ expire_dt1 && $ today_dt <'へ<$ expire_dt1 && $ today_dt <$ expire_dt2' today_dt $ここではより多くのを参照してください。 $ expire_dt2' – Blinkydamo

    答えて

    0

    ... $today_dt = new DateTime(date("01:00:00"));ので、私はあなたが適切な比較ですをしなければならないと思いますまず$expire_dt2 = new DateTime(date("08:00:00"));、その後$expire_dt1 = new DateTime(date("19:30:00"));ています。 ちょうどそれが var_dump($today_dt<$expire_dt1); var_dump($today_dt<$expire_dt2);両方に該当与えチェックしvar_dump($expire_dt1>$expire_dt2); also gives true.So makes the following comparison ..hope it will works..

    //$today_dt = new DateTime(date("H:i:s")); 
    //$today_dt = new DateTime(date("01:00:00")); **** Different result!! 
    $today_dt = new DateTime(date("01:00:00")); //**** Different result!! 
    $expire_dt1 = new DateTime(date("19:30:00")); 
    $expire_dt2 = new DateTime(date("08:00:00")); 
    // var_dump($today_dt<$expire_dt1); 
    // var_dump($today_dt<$expire_dt2); 
    // var_dump($expire_dt1>$expire_dt2); 
    if ($today_dt > $expire_dt1 && $today_dt < $expire_dt2){ 
        $DateEnd = strtotime(date('10:30:00')); 
        echo '10'; 
    }else{ 
        $DateEnd = strtotime(date('H:i:s')." +3 hour"); 
        echo '3'; 
    } 
    echo '<br>'.date('H:i:s',$DateEnd); 
    

    http://php.net/manual/en/datetime.diff.php