php相差天数
① php时间相减获得剩余天数小时数分钟数
两时间戳相减得到相差时间的秒数,然后转化成X天X小时X分X秒
<?php
//自定义函数:time2string($second) 输入秒数换算成多少天/多少小时/多少分/多少秒的字符串
function time2string($second){
$day = floor($second/(3600*24));
$second = $second%(3600*24);//除去整天之后剩余的时间
$hour = floor($second/3600);
$second = $second%3600;//除去整小时之后剩余的时间
$minute = floor($second/60);
$second = $second%60;//除去整分钟之后剩余的时间
//返回字符串
return $day.'天'.$hour.'小时'.$minute.'分'.$second.'秒';
}
//获取从现在到2011年11月11日11点11分11秒还有多久
$time1 = strtotime('2011-11-11 11:11:11');
$time2 = strtotime(now);
//相减得到相差的 秒 数
$time3 = $time1 - $time2;
//输出
echo '从现在到2011年11月11日11点11分11秒还有:'.time2string($time3);
② 用php计算给定两个日期相差多少天
:
计算方法不只下面介绍的这些,只是一些比较常规的方法:
上面的php时间日期函数strtotime已经把字符串日期变成了时间戳,这样只要让两数值相减,然后把秒变成天就可以了,比较的简单,如下:
$days=round(($enddate-$startdate)/3600/24) ;
下面介绍另外一种方法:
上面判断的是两个日期的大小,下面则是判断生日的程序代码,得到的$n就是相距生日的天数。
$birthday=生日;
$birthday = preg_replace(‘/d+/’, Date(‘Y’), $birthday, 1);
$d = 60*60*24;
$n= floor((strtotime($birthday)-time())/$d);$n=$n+1;
还有如果相比的是现在的时间,就可以用time()函数,得到的就是现在的时间戳.
第二种情况呢,就是有数据库,这样就相对比较容易一些了!如果是MSSQL可以使用触发器!用专门计算日期差的函数datediff()计算便可!
如果是MYSQL那就用两个日期字段的时间戳值,进行计算后便可得到相差的天数了。方法和上面的代码很像。
③ php 计算两个时间相差多少天
有时可能会碰到这种需求,需要计算两个日期相隔多少天?
下面这个函数很好的解决了这个问题
<?php
/*
*
*函数功能:计算两个以YYYY-MM-DD为格式的日期,相差多少天(日)
*return int
*/
function getChaBetweenTwoDate($date1,$date2){
$Date_List_a1=explode("-",$date1);
$Date_List_a2=explode("-",$date2);
$d1=mktime(0,0,0,$Date_List_a1[1],$Date_List_a1[2],$Date_List_a1[0]);
$d2=mktime(0,0,0,$Date_List_a2[1],$Date_List_a2[2],$Date_List_a2[0]);
$Days=round(($d1-$d2)/3600/24);
return $Days;
}
使用方法如下:
echo getChaBetweenTwoDate('2012-11-20','1949-10-16');
以上代码执行结果将显示为:
23046
意思即这两个日期相差 23046 天。
④ php 如何计算两个时间相差几分钟,几小时,几天,就像论坛里面的那种
这里有,datediff
http://hi..com/xlpu/blog/item/454f92638ab7d4d4e6113a7d.html
function DateDiff($part, $begin, $end)
$part = y/m/w/d/h/n/s 分别对应 年/月/周/日/时/分/秒
$begin/$end 格式 yyyy-mm-dd hh:nn:ss
strtotime这个是字符串转时间的函数,如果你不知道,我一并给你
strtotime(time,now)
time 规定要解析的时间字符串。
now 用来计算返回值的时间戳。如果省略该参数,则使用当前时间。
⑤ php计算两个日期相差多少天
<?php/** * 求两个日期之间相差的天数 * (针对1970年1月1日之后,求之前可以采用泰勒公式) * @param string $day1 * @param string $day2 * @return number */function diffBetweenTwoDays ($day1, $day2){ $second1 = strtotime($day1); $second2 = strtotime($day2); if ($second1 < $second2) { $tmp = $second2; $second2 = $second1; $second1 = $tmp; } return ($second1 - $second2) / 86400;}$day1 = "2013-07-27";$day2 = "2013-08-04";$diff = diffBetweenTwoDays($day1, $day2);echo $diff."\n";
⑥ PHP中如何用自定义函数计算两个时间相隔的天数,月数等
先用strtotime()把两个时间的时间戳算出来,相减,再除一天的秒数,月数怎么算,要有个规则才行,怎么算一个月?
⑦ PHP 中 知道开始时间和相隔天数如何计算出结束时间
用时间戳来计算就方便多了 时间戳是精确到秒的
开始时间转换成时间戳可以使用mktime函数 具体用法参考手册
计算得到的时间戳是一个数字 用$starttime+相隔天数*24*3600 就能得到结束天数的时间戳
通过 date函数转换成需要的格式就可以输出了
⑧ php如何计算当天与某一天相差多少天
<?php
$today=strtotime("2015-6-3000:00:00");//今天
$past=strtotime("2015-5-2000:00:00");//2015-5-20
$dif=ceil(($today-$past)/86400);//60s*60min*24h
echo"相差<strong>$dif</strong>天!";
?>
大概是这样子了 如果有变化 就是 改变变量的位置
⑨ 怎样用php实现两个时间相减,得到相差的天数
<?php
$time1 = mktime(10,20,30,2,5,2000); //2000-2-5 10:20:30
$time2 = mktime(18,30,20,5,2,2000); //2000-5-2 18:30:20
$diff = (int)(($time2-$time1)/(24*3600));
echo "$time2 和 $time1 的时间差为:" . $diff . "天<br>";
?>
⑩ PHP中怎样计算两个日期相差的天数
<?php
/**
*求两个日期之间相差的天数
*(针对1970年1月1日之后,求之前可以采用泰勒公式)
*@paramstring$day1
*@paramstring$day2
*@returnnumber
*/
functiondiffBetweenTwoDays($day1,$day2)
{
$second1=strtotime($day1);
$second2=strtotime($day2);
if($second1<$second2){
$tmp=$second2;
$second2=$second1;
$second1=$tmp;
}
return($second1-$second2)/86400;
}
$day1="2013-07-27";
$day2="2013-08-04";
$diff=diffBetweenTwoDays($day1,$day2);
echo$diff." ";