PHP7.3判断某一时间是否在一定时间段范围内

原创 阁主  2020-11-14 20:39:39  阅读 5347 次 评论 1 条
摘要:

最近写到一个项目有这个需求,顺带写个文章做个笔记,分享给大家。

实现目标

用php判断一个时间是否在某一时间端的范围内?当然你可以使用我的方法写出其他的衍生写法。

代码内容

所有时间均为时间戳格式

  1. <?php
  2. //取得要判断的当前时间,
  3. $time = time();
  4. //转换定义的时间为时间戳(数值)
  5. $strTime = strtotime($time);
  6. //定义起始时间(时间戳格式)
  7. $timeBegin = strtotime('20:00');
  8. //定义结束时间(时间戳格式)
  9. $timeEnd = strtotime('21:30');
  10. //判断取得的当前时间是否在定义的范围内
  11. if($time >=$timeBegin && $time <= $timeEnd){
  12.     echo "当前时间{$time},定义的时间为{$timeBegin}-{$timeEnd},时间在范围内!";
  13. }else{
  14.     echo "当前时间{$time},定义的时间为{$timeBegin}-{$timeEnd},时间不在范围内!";
  15. }
  16. ?>

时间在范围内.png

封装函数

当然,也可以把上面的写法封装起来,写成函数调用,为方便使用,我也在基础上改写一下。

  1. <?php
  2. class Time
  3. {
  4.     public function get_time()
  5.     {
  6.         #判断当前时间是否在时间段内,如果是,则执行
  7.         $Day = date('Y-m-d ', time());
  8.         $timeBegin = strtotime($Day . "20:00" . ":00");
  9.         $timeEnd = strtotime($Day . "21:30" . ":00");
  10.         $curr_time = time();
  11.         if ($curr_time >= $timeBegin && $curr_time <= $timeEnd) {
  12.             // return true; 
  13.             return "当前时间{$curr_time},定义的时间为{$timeBegin}-{$timeEnd},时间在范围内!";
  14.         }
  15.         return "当前时间{$curr_time},定义的时间为{$timeBegin}-{$timeEnd},时间不在范围内!";
  16.     }
  17. }
  18.  
  19. $se = new Time();
  20. $data =  $se->get_time();
  21. echo $data;
  22. ?>

封装.png

附件区

没门儿,快去动手打!

本文地址:https://www.mainblog.cn/244.html
版权声明:本文为原创文章,版权归 阁主 所有,欢迎分享本文,转载请保留出处!
免责申明:有些内容源于网络,没能联系到作者。如侵犯到你的权益请告知,我们会尽快删除相关内容。

评论已关闭!