【问题标题】:php rotator based on date and time基于日期和时间的php旋转器
【发布时间】:2023-04-04 05:45:01
【问题描述】:

我找到了这个脚本:

<?php
date_default_timezone_set('America/Los_Angeles'); 
$time = date('H'); 
if($time < 12){ 
   echo 'good morning'; 
}else if($time >= 20 and $time < 21){ 
    echo 'good afternoon'; 
}else{ 
    echo 'good evening'; 
} 
?>

并希望将其扩展为将其设置为特定的日期和时间,例如:

  • 如果时间
  • else if time >= 2011-11-30 14:00 and
  • else echo 'after'

作为一个 php 菜鸟,我浏览了整个网络,但我能找到的唯一例子是工作日或小时,但不是上面的组合。有人可以这么好心并帮我完成这个设置吗? 提前谢谢你

【问题讨论】:

    标签: php date time


    【解决方案1】:

    使用 php 的 mktime 函数从您想要的任何日期创建一个 unix 纪元时间。

    mktime(12, 34, 56, 7, 8, 2009);  // 12:34:56 on 7-8-2009 
    

    然后可以将其与返回当前 unix 纪元的time 进行比较。

    $now = time();
    $desired = mktime(12, 34, 56, 7, 8, 2009);
    if ($now < $desired)
        echo "Not yet!";
    else
        echo "It is past time!";
    

    【讨论】:

      【解决方案2】:
      date_default_timezone_set('America/Los_Angeles'); 
      $time = new DateTime(); 
      if($time < new DateTime('2011-11-30 13:59')){ 
         echo 'before'; 
      }else if($time >= new DateTime('2011-10-31 14:00') and $time < new DateTime('2012-12-15 20:00')){ 
          echo 'now'; 
      }else{ 
          echo 'after'; 
      } 
      

      【讨论】:

        【解决方案3】:

        只需更改 date() 函数的输入,以及 if 条件:

        <?php
        date_default_timezone_set('America/Los_Angeles'); 
        $time = strtotime(date('Y-m-d H:m')); 
        if($time < strtotime('2011-11-30 13:59')){ 
           echo 'Before'; 
        }else if($time >= strtotime('2011-11-30 14:00') and $time < strtotime('2011-11-30 20:00')){ 
           echo 'Now'; 
        }else{ 
           echo 'After'; 
        } 
        ?>
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2021-08-14
          • 1970-01-01
          • 2016-08-21
          • 1970-01-01
          • 1970-01-01
          • 2015-09-23
          • 2020-03-09
          • 1970-01-01
          相关资源
          最近更新 更多