PHP按日期按天对时间段进行分割
来源:互联网 发布:excel替代软件 编辑:程序博客网 时间:2024/05/22 00:39
//开始时间 ~ 结束时间 $start_date=I('date_a'); $end_date=I('date_b');// //如果为空,则从今天的0点为开始时间 if(!empty($start_date)) $start_date=date('Y-m-d H:i:s',strtotime($start_date)); else $start_date=date('Y-m-d 00:00:00',time());// //如果为空,则以明天的0点为结束时间(不存在24:00:00,只会有00:00:00) if(!empty($end_date)) $end_date=date('Y-m-d H:i:s',strtotime($end_date)); else $end_date=date('Y-m-d 00:00:00',strtotime('+1 day')); //between 查询 要求必须是从低到高 if($start_date>$end_date) { $ttt=$start_date; $start_date=$end_date; $end_date=$ttt; }elseif($start_date==$end_date){ echo '时间输入错误';die; } $time_s=strtotime($start_date); $time_e=strtotime($end_date); //生成中间时间点数组(时间戳格式、日期时间格式、日期序列) $days_inline_array=array(); $times_inline_array=array(); $days_list=array(); //判断开始和结束时间是不是在同一天 $days_inline_array[0]=$start_date; $times_inline_array[0]=$time_s; if( date('Y-m-d',$time_s) ==date('Y-m-d',$time_e) ){ $days_inline_array[1]=$end_date; $times_inline_array[1]=$time_e; $days_list[]=date('Y-m-d',$time_s); } else { /** * A.取开始时间的第二天凌晨0点 * B.用结束时间减去A * C.用B除86400取商,取余 * D.用A按C的商循环+86400,取得分割时间点,如果C没有余数,则最后一个时间点与循环最后一个时间点一致 */ $A_temp=date('Y-m-d 00:00:00',$time_s+86400); $A=strtotime($A_temp); $B=$time_e-$A; $C_quotient=floor($B/86400); //商舍去法取整 $C_remainder=fmod($B,86400); //余数 $days_inline_array[1]=$A_temp; $times_inline_array[1]=$A; $days_list[]=date('Y-m-d',$A); for($increase_time=$A,$c_count_t=1;$c_count_t<=$C_quotient;$c_count_t++) { $increase_time+=86400; $days_inline_array[]=date('Y-m-d H:i:s',$increase_time); $times_inline_array[]=$increase_time; $days_list[]=date('Y-m-d',$increase_time); } //如果有余数,则最后一个时间点大于循环最后一个时间点,但在同一天 if($C_remainder) { $days_inline_array[]=$end_date; $times_inline_array[]=$time_e; //这里不再添加 $days_list,因为余数和最后一个凌晨0点必定是同一天 } }
阅读全文
1 0
- PHP按日期按天对时间段进行分割
- apache日志按日期进行分割
- 按日期对文件进行自动归档
- SQL 对表格进行按日期分组
- 按日期对文件进行自动归档
- 分割时间段
- 对CString进行分割
- log4j按日分割文件
- 数据库对字符串进行分割
- Java 对一组时间进行处理 提出连续的时间段
- maillog 日志 切割 按日 分割
- apache 日志按日期分割
- 根据字符串对字符串进行分割
- c#里对字符串进行分割
- 利用cronolog对nginx日志进行分割
- 使用分水岭算法对图像进行分割
- opencv分水岭算法对图像进行分割
- 如何对PDF文件进行分割
- Java RMI 框架(远程方法调用)
- 异常处理
- 【安全牛学习笔记】Kali Linux渗透测试介绍
- Tensorflow ActiveFunction激活函数解析
- pip安装时出现问题:TypeError
- PHP按日期按天对时间段进行分割
- table表格合并第一列中相同的内容!
- GitChat · 前端 | 从软件工程角度看大前端技术栈
- PHP微信简单分享组件
- 交换变量
- win7网络打印机重启后脱机的问题
- 公司实施odoo(openerp)Ubuntu14.04安装过程,实施成功!
- react-router 中的history
- 基于vue-cli的vue项目之路由6--重定向4-----path带参重定向