| 
       今天我们来看在php中计算两个时间之间的时间差.下面我们直接使用了data,strtotime与time三个函数就实现了.有需要的朋友可参考,今天要讲的这个例子,需求是这样的,得知某个日期时间,如:2012-04-25 10:10:00,我要在这个日期时间的基础上加上5个月并返回处理后的日期,结果:2012-04-25 10:10:00 加5个月等于 2012-09-25 10:10:00 
结合PHP函数date()与strtotime()两个函数来实现大致也是这个意思,代码如下: 
	
	- <?php  
 
	-  
 
	-  
 
	-  
 
	-  
 
	-  
 
	- $a = '2012-04-25 10:10:00';  
 
	-    
 
	-  
 
	- $a_time = strtotime($a);  
 
	-    
 
	-  
 
	- $b_time = strtotime('+5 Month',$a_time);  
 
	-    
 
	-  
 
	- $b = date('Y-m-d H:i:s',$b_time);  
 
	- echo '这是加了五个月后的日期'.$b;  
 
	-    
 
	-  
 
	- $b = date('Y-m-d H:i:s',strtotime('+'.$time.' Month',strtotime($a)));  
 
	- echo '这是加了五个月后的日期'.$b;  
 
	- ?> 
 
	 
 
常用的计算时间,代码如下: 
	
	- <?php   
 
	- date_default_timezone_set('PRC');  
 
	- echo "今天:",date("Y-m-d",time()),"<br>";   
 
	- echo "今天:",date("Y-m-d",strtotime("18 june 2008")),"<br>";   
 
	- echo "昨天:",date("Y-m-d",strtotime("-1 day")), "<br>";   
 
	- echo "明天:",date("Y-m-d",strtotime("+1 day")), "<br>";   
 
	- echo "一周后:",date("Y-m-d",strtotime("+1 week")), "<br>";   
 
	- echo "一周零两天四小时两秒后:",date("Y-m-d G:H:s",strtotime("+1 week 2 days 4 hours 2 seconds")), "<br>";   
 
	- echo "下个星期四:",date("Y-m-d",strtotime("next Thursday")), "<br>";   
 
	- echo "上个周一:".date("Y-m-d",strtotime("last Monday"))."<br>";   
 
	- echo "一个月前:".date("Y-m-d",strtotime("last month"))."<br>";   
 
	- echo "一个月后:".date("Y-m-d",strtotime("+1 month"))."<br>";   
 
	- echo "十年后:".date("Y-m-d",strtotime("+10 year"))."<br>";   
 
	- ?> 
 
	-  
 
	-  
 
	-  
 
	-  
 
	-  
 
	-  
 
	-  
 
	-  
 
	-  
 
	-  
 
	-  
 
	-  
 
	 
 
这里再看一些日期加减函数,代码如下: 
	
	-  
 
	- function GetWeek($times) 
 
	- { 
 
	- $res = date('w', strtotime($times)); 
 
	- if($res==0) 
 
	- $res=7; 
 
	- return $res; 
 
	- } 
 
	-  
 
	- function GetTime($times) 
 
	- { 
 
	- $res = date('H:i', strtotime($times)); 
 
	- return $res; 
 
	- } 
 
	-  
 
	- function GetMonth($Month,$type='l') 
 
	- { 
 
	- if(!strcmp($type,'b')) 
 
	- $res=date("Y-m-d H:i:s",strtotime("-$Month months")); 
 
	- if(!strcmp($type,'l')) 
 
	- $res=date("Y-m-d H:i:s",strtotime("+$Month months")); 
 
	- return $res; 
 
	- } 
 
	-  
 
	- function GetCurrentDateTime() 
 
	- { 
 
	- $res=date("Y-m-d H:i:s",time()); 
 
	- return $res; 
 
	- } 
 
	-  
 
	- function GetDiffHours($hours,$type='l') 
 
	- { 
 
	- if(!strcmp($type,'b')) 
 
	- $res=date("Y-m-d H:i:s",strtotime("-$hours hour")); 
 
	- if(!strcmp($type,'l')) 
 
	- $res=date("Y-m-d H:i:s",strtotime("+$hours hour")); 
 
	- return $res;  
 
	- } 
 
	-  
 
	- function GetDiffMinute($Minute,$type='l') 
 
	- { 
 
	- if(!strcmp($type,'b')) 
 
	- $res=date("Y-m-d H:i:s",strtotime("-$Minute minute")); 
 
	- if(!strcmp($type,'l')) 
 
	- $res=date("Y-m-d H:i:s",strtotime("+$Minute minute")); 
 
	- return $res;  
 
	- } 
 
	-  
 
	- function GetDiffSec($sec,$type='l') 
 
	- { 
 
	- if(!strcmp($type,'b')) 
 
	- $res=date("Y-m-d H:i:s",strtotime("-$sec second")); 
 
	- if(!strcmp($type,'l')) 
 
	- $res=date("Y-m-d H:i:s",strtotime("+$sec second")); 
 
	- return $res;  
 
	- } 
 
	-  
 
	- function GetDiffWeek($Week,$type='l') 
 
	- { 
 
	- if(!strcmp($type,'b')) 
 
	- $res=date("Y-m-d H:i:s",strtotime("-$Week week")); 
 
	- if(!strcmp($type,'l')) 
 
	- $res=date("Y-m-d H:i:s",strtotime("+$Week week")); 
 
	- return $res;  
 
	- } 
 
	-  
 
	- function GetDiffDays($days,$type='l') 
 
	- { 
 
	- if(!strcmp($type,'b')) 
 
	- $res=date("Y-m-d H:i:s",strtotime("-$days day")); 
 
	- if(!strcmp($type,'l')) 
 
	- $res=date("Y-m-d H:i:s",strtotime("+$days day")); 
 
	- return $res;  
 
	- } 
 
	-  
 
	- function GetDiffYears($year,$type='l') 
 
	- { 
 
	- if(!strcmp($type,'b')) 
 
	- $res=date("Y-m-d H:i:s",strtotime("-$year year")); 
 
	- if(!strcmp($type,'l')) 
 
	- $res=date("Y-m-d H:i:s",strtotime("+$year year")); 
 
	- return $res;  
 
	- } 
 
	 
 
      
      (责任编辑:admin) |