一些日期的计算方式 PHP
一些日期的计算
某个月内的所有天数:
public function getMonthDay ($date)
{
$stattime = strtotime(date('Ym01',strtotime($date .'01')));
$day = date('t',strtotime($date .'01'));
$i = 0;
$arr = [];
while ($i < $day) {
$arr[$i]['datetime'] = date('Ymd',$stattime + $i * 86400);
$i++;
} return $arr;
}
今日:图表X轴以小时为单位,每隔3小时显示一个数值。
public function getToday ($date)
{
//今日:图表X轴以小时为单位,每隔3小时显示一个数值。
$today = strtotime ($date);
$todayEnd = strtotime ($date . '+1 day');
$hours = ($todayEnd - $today) / (3 * 3600); $i = 0;
$arr = [];
while ($i < $hours) {
$arr[$i]['starthour'] = date ('YmdH' , $today + $i * 3 * 3600);
$arr[$i]['endhour'] = date ('YmdH' , $today + (($i + 1) * 3 -1) * 3600);
$i++;
}
return $arr;
}
昨日:图表X轴以小时为单位,每隔3小时显示一个数值。
public function getYesterday ($date)
{
//昨日:图表X轴以小时为单位,每隔3小时显示一个数值。
$today = strtotime ($date);
$yesterday = strtotime ($date .'-1 day');
$hours = ($today - $yesterday) / (3 * 3600); $i = 0;
$arr = [];
while ($i < $hours) {
$arr[$i]['starthour'] = date ('YmdH' , $yesterday + $i * 3* 3600);
$arr[$i]['endhour'] = date ('YmdH' , $yesterday + (($i + 1) * 3 -1)* 3600);
$i++;
} return $arr;
}
近1月:图表X轴以天为单位,每隔7天显示一个数值。
public function getMonth ($date)
{
//近1月:图表X轴以天为单位,每隔7天显示一个数值。
$mon = date ('Ym01' , strtotime ($date)); $month = strtotime(date('Ym01',strtotime($mon .'-1 month'))); //上个月第一天
$monthend = strtotime(date ('Y-m-t',$month)); // 上个月最后一天 $days = floor(($monthend - $month) / (7 * 24 * 3600));
if ($days<4) {
$days = 4; // 28天的月份
}
$i = 0;
$arr = [];
while ($i < $days) {
$arr[$i]['startdays'] = date ('Ymd' , $month + $i * 7 * 24 * 3600);
if($days==$i+1){
$arr[$i]['enddays'] = date('Ymd',$monthend);//上个月最后一天
}else{
$arr[$i]['enddays'] = date ('Ymd' , $month + (($i + 1) * 7-1) * 24 * 3600);
}
$i++;
} return $arr;
}
近6月:图表X轴以月为单位,每个月份显示一个数值。
public function getSixMonth ($date)
{
//近6月:图表X轴以月为单位,每个月份显示一个数值。
$i = 0;
$arr = [];
$date = date('Y-m-01',strtotime($date));
while ($i < 6) {
$arr[$i]['startmonth'] = date ('Ym' , strtotime ($date .'-'. (6 - $i) . ' month'));
$arr[$i]['endmonth'] = date ('Ym' , strtotime ($date .'-'.(6 - $i) . ' month'));
$i++;
}
return $arr;
}
一些日期的计算方式 PHP的更多相关文章
- Java中使用LocalDate根据日期来计算年龄
Java中和日期直接相关的类有很多,平时最常用到的就是java.util package下面的Date和Calendar,需要用到格式的时候还会用到java.text.SimpleDateFormat ...
- Python获取当前日期和日期差计算
在Python中获取日期和时间很简单,主要使用time和datetime包 1.获取当前时间并格式化 from dateutil import rrule from datetime import d ...
- sas编程-日期相差计算函数 intnx
sas编程-日期相差计算函数 intnx 示例代码: data _null_; lastdate=intnx('year',today(),-100); format lastdate ...
- System.currentTimeMillis()计算方式与时间的单位转换
目录[-] 一.时间的单位转换 二.System.currentTimeMillis()计算方式 一.时间的单位转换 1秒=1000毫秒(ms) 1毫秒=1/1,000秒(s)1秒=1,000,000 ...
- NTC(负温度)热敏电阻.阻值的计算方式
来源 :http://blog.csdn.net/blue0432/article/details/8690190 现在低成本测温方案中NTC热敏电阻用的比较多,一般采用查表的方法获取温度值,这就牵涉 ...
- mysql中TPS, QPS 的计算方式
今天突然有个同事问题一个问题, mysqlTPS和QPS的计算公式是什么? 以前确实也没有关注过这个计算公式,所以查了下学习了下: 下面是参考内容. 在做db基准测试的时候,qps,tps 是衡量数 ...
- Java通过jxl解析Excel文件入库,及日期格式处理方式 (附源代码)
JAVA可以利用jxl简单快速的读取文件的内容,但是由于版本限制,只能读取97-03 xls格式的Excel. 本文是项目中用到的一个实例,先通过上传xls文件(包含日期),再通过jxl进行读取上传 ...
- 自学Aruba1.3-WLAN一些基本常识802.11n速率计算方式、802.11n及802.11AC速率表
点击返回:自学Aruba之路 自学Aruba1.3-WLAN一些基本常识802.11n速率计算 1. 802.11n速率计算方式1.1 802.11n使用的主要技术 802.11n采用MIMO多天线技 ...
- oracle行转列、列转行、连续日期数字实现方式及mybatis下实现方式
转载请注明出处:https://www.cnblogs.com/funnyzpc/p/9977591.html 九月份复习,十月份考试,十月底一直没法收心,赶在十一初 由于不可抗拒的原因又不得不重新找 ...
随机推荐
- Python排序算法——冒泡排序
有趣的事,Python永远不会缺席! 如需转发,请注明出处:小婷儿的python https://www.cnblogs.com/xxtalhr/p/10786904.html 一.冒泡排序(Bubb ...
- C# PDF转Image图片
概述 PDF是常用的文件格式之一,通常情况下,我们可以使用itextsharp生产PDF文件:可是如何将PDF文件转换成图片那?目前常用的: 思路1.根据PDF绘画轨迹重新绘制图片: 思路2.是将PD ...
- Asp.Net Core SignalR 用泛型Hub优雅的调用前端方法及传参
继续学习 最近一直在使用Asp.Net Core SignalR(下面成SignalR Core)为小程序提供websocket支持,前端时间也发了一个学习笔记,在使用过程中稍微看了下它的源码,不得不 ...
- setData优化过程
https://blog.csdn.net/rolan1993/article/details/88106343 在做一个小球跟随手指移动的效果时候,由于在touchmove事件中频繁调用setDat ...
- Python——Mysql
一.导入 import pymysql 二.连接 def connect_wxremit_db(): return pymysql.connect(host='10.123.5.28', port=3 ...
- Lodop打印控件在页面如何使用
Lodop打印控件部署到web服务器简单,在页面的使用方法也简单,是非常容易和方便使用的打印控件.客户端本地打印角色(即用户访问网站后 用自己链接的打印机进行客户端本地打印),步骤很少,部署简单:Lo ...
- vue 使用小结 2019.03
v-bind 中使用函数 :attr = 'num' 如上面的例子,通常 num 是 vue 实例中 data 的值,或者是 computed 对象中的值,我们可以在具体函数中计算,改变相应的变量,以 ...
- shell实战之日志脱敏
本次实战目标为日志脱敏,将日志目录内的所有文件进行处理,凡是涉及到卡号和密码的信息,一律以“*”号替代,要替代的内容都从对应的标签内获取,本脚本执行目录 drwxr-xr-x 5 root root ...
- Mysql注入小tips --持续更新中
学习Web安全好几年了,接触最多的是Sql注入,一直最不熟悉的也是Sql注入.OWASP中,Sql注入危害绝对是Top1.花了一点时间研究了下Mysql类型的注入. 文章中的tips将会持续更新,先说 ...
- Oracle 查看链接数、创建索引等的DDL语句
select count(*),machine from v$session group by machine 今天打算将一个数据库的索引在另一个测试库上重新创建一遍,研究了一下. set pages ...