php 日期计算,求当前/指定年月的月初月末,上一月下一月
PHP
0
求当前月的月初月末
$monthbegin = date("Y-m-01",time());
$monthend = date("Y-m-t", time());
//有时需要下边的写法。
//计算当月的第一天:
$Firstday=date('Y-m-01', strtotime(date("Y-m-d")));
echo $Firstday;
//计算当月的最后一天:计算出当月第一天加上一个月再减去一天
echo date('Y-m-d', strtotime("$Firstday +1 month -1 day"));
求指定年月的月初月末
已知年月,末尾拼接上‘-01’,使其成为y-m-d格式的日期字符串,再使用strtotime转换成时间戳
$date_convey = '2020-12-01'
$monthbegin = date("Y-m-01",strtotime($date_convey));
$monthend = date("Y-m-t", strtotime($date_convey));
PHP月份跨月计算日期不正确的处理,获取月份的第一天和最后一天
因为有大小月,所以涉及月份最后一天计算的时候直接date('Y-m-d', strtotime('+1 month'));得出的结果很有可能是下下个月的。
获取上个月的第一天及最后一天.
//上个月第一天:计算出本月第一天再减一个月 echo date('Y-m-01', strtotime(date('Y-m-01') . ' -1 month')); //上个月最后一天:计算出本月第一天再减一天 echo date('Y-m-d', strtotime(date('Y-m-01') . ' -1 day'));获取当天年份、月份、日及天数.
echo " 本月共有: ".date("t")."天"; echo " 当前年份:".date('Y')."年"; echo " 当前月份:".date('m')."月"; echo " 当前几号:".date('d')."日";php计算两个时间相差的天数、小时数、分钟数、秒数 不管是自己使用字符串来构造的时间类型(使用strtotime转换而来的)也好,还是直接使用系统的time函数得到的时间类型也好,最终其实都是长整形的一个变量。两个这样的变量,就很明显可以做减法了。 做减法得到值是相差的秒数,这个秒数对86400(一天的秒数)取余,则得到相差数。如果对86400取模,还对3600秒、60秒取余,则得到相关的小时和分钟数。如果对86400取模,再对60取模,则得到相差的秒数。
//$startdate是开始时间,$enddate是结束时间 $startdate="2020-3-15 11:50:00"; $enddate="2021-12-12 12:12:12"; $date=floor((strtotime($enddate)-strtotime($startdate))/86400); echo "相差天数:".$date."天
"; $hour=floor((strtotime($enddate)-strtotime($startdate))%86400/3600); echo "相差小时数:".$hour."小时
"; $minute=floor((strtotime($enddate)-strtotime($startdate))%86400/60); echo "相差分钟数:".$minute."分钟
"; $second=floor((strtotime($enddate)-strtotime($startdate))%86400%60); echo "相差秒数:".$second."秒";
版权声明:除非特别标注原创,其它均来自互联网,转载时请以链接形式注明文章出处。