CSDN博客

img WapWeb

PHP中怎样计算两个日期相差的天数

发表于2004/6/23 11:39:00  3389人阅读

分类: PHP程序设计技术点滴!


我想知道距今天n天前的时期是多少怎么写?或者说,比如  2002-03-27  和2001-09-27之间有多少天?  

---------------------------------------------------------------  
 
先把时间转变为年、月、日,然后如下:  
$from=mktime(0,0,0,$month1,$day1,$year1);  
$to=mktime(0,0,0,$month2,$day2,$year2);  
$day_diff=($to-$from)/86400;  
即得到相差多少天。  
 
---------------------------------------------------------------  
 
function  DateDiff($d1,$d2=""){  
             if(is_string($d1))$d1=strtotime($d1);  
             if(is_string($d2))$d2=strtotime($d2);  
             return  ($d2-$d1)/86400;  
 }  
 echo  DateDiff("2002-03-27","2001-09-27")."";  
 echo  DateDiff("2002-03-27")."";  
   
 function  DateAdd($n,$d=""){  
             if(is_string($d))$d=strtotime($d);  
             return  Date("Y-m-d",$d+$n*86400);  
 }  
 echo  DateAdd(10,"2001-09-27")."";  
 echo  DateAdd(-10)."";

 

-------------------------------

计算距离某天还有多少天
<? 

####<读入系统时间功能>####

function nowtime(){

 $date=date("m/d/Y");

 return $date;

}?>
<?php $time = nowtime()?>


<script language="javascript">
var urodz= new Date("10/18/2003"); //指定欲比较的日期

var now = new Date("<?php echo $time ?>");//获得当前服务器日期
var ile = urodz.getTime() - now.getTime() ;//做比较
var dni = Math.floor(ile / (1000 * 60 * 60 * 24))+1;
if (dni > 1)
document.write("距日10/18/2003还有<font color=red size=20pt>"+dni+"</font>天")
else if (dni == 1)
document.write("只有2天啦!")
else if (dni == 0)
document.write("今天就是啊!")
else
document.write("好象已经过了哦!");


</script>

 

0 0

相关博文

我的热门文章

img
取 消
img