您的位置:

php计算日期相差天数二种方法(php计算n天后的日期)

本文目录一览:

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计算给定两个日期相差多少天

:

计算方法不只下面介绍的这些,只是一些比较常规的方法:

上面的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

/**

 * 求两个日期之间相差的天数

 * (针对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";