PHP计算两个时间段是否有交集(边界重叠不算)
2023-09-14 08:57:26 时间
优化前的版本:
/** * PHP计算两个时间段是否有交集(边界重叠不算) * * @param string $beginTime1 开始时间1 * @param string $endTime1 结束时间1 * @param string $beginTime2 开始时间2 * @param string $endTime2 结束时间2 * @return bool * @author 52php.cnblogs.com */ function is_time_cross($beginTime1 = '', $endTime1 = '', $beginTime2 = '', $endTime2 = '') { $status = $beginTime2 - $beginTime1; if ($status > 0) { $status2 = $beginTime2 - $endTime1; if ($status2 > 0) { return false; } elseif ($status2 < 0) { return true; } else { return false; } } elseif($status < 0) { $status2 = $endTime2 - $beginTime1; if ($status2 > 0) { return true; } else if ($status2 < 0) { return false; } else { return false; } } else { $status2 = $endTime2 - $beginTime1; if ($status2 == 0) { return false; } else { return true; } } }
优化后的版本(条件合并):
/** * PHP计算两个时间段是否有交集(边界重叠不算) * * @param string $beginTime1 开始时间1 * @param string $endTime1 结束时间1 * @param string $beginTime2 开始时间2 * @param string $endTime2 结束时间2 * @return bool * @author blog.snsgou.com */ function is_time_cross($beginTime1 = '', $endTime1 = '', $beginTime2 = '', $endTime2 = '') { $status = $beginTime2 - $beginTime1; if ($status > 0) { $status2 = $beginTime2 - $endTime1; if ($status2 >= 0) { return false; } else { return true; } } else { $status2 = $endTime2 - $beginTime1; if ($status2 > 0) { return true; } else { return false; } } }
测试:
$beginTime1 = strtotime('2015-08-07 06:30'); $endTime1 = strtotime('2015-08-07 08:30'); $beginTime2 = strtotime('2015-08-07 05:30'); $endTime2 = strtotime('2015-08-07 06:31'); echo is_time_cross($beginTime1, $endTime1, $beginTime2, $endTime2);
相关文章
- PHP声明参数类型
- Linux快速安装PHP的指南(linux一键安装php)
- php面向对象多继承实现详解编程语言
- MySQL备份之用PHP编程(mysql备份php)
- PHP应该在哪个Linux操作系统上运行?(php用什么linux)
- PHP实现Object Oriented Stye封装MySQL类(php封装mysql类)
- PHP与MSSQL结合使用时遇到乱码问题怎么解决?(phpmssql乱码)
- 用PHP测试MSSQL类的新尝试(php 测试mssql类)
- 使用PHP和MSSQL搭建技术论坛(php mssql 论坛)
- PHP与MSSQL联合 处理日期数据(php mssql 日期)
- 在PHP中使用随机数的三个步骤
- 怎样在PHP中通过ADO调用Asscess数据库和COM程序
- PHP下10件你也许并不了解的事情
- php图片上添加透明度渐变的效果
- php正则表达式小结
- PHP用mysql数据库存储session的代码
- PHP+SQL注入攻击的技术实现以及预防办法
- PHP和Mysqlweb应用开发核心技术第1部分Php基础-1开始了解php
- PHP数组及条件,循环语句学习
- php二维数组排序详解
- windows下配置apache+php+mysql时出现问题的处理方法
- PHP改进计算字符串相似度的函数similar_text()、levenshtein()
- PHP通过插入mysql数据来实现多机互锁实例
- php学习笔记之基础知识
- 云主机搭建php+mysql运行环境教程(护卫神PHP套件)
- php连接odbc数据源并保存与查询数据的方法
- PHP配置文件php.ini中打开错误报告的设置方法