您的位置:首页技术文章
文章详情页

PHP模拟SQL Server的两个日期处理函数

【字号: 日期:2024-01-25 10:19:58浏览:4作者:猪猪
//在PHP中处理日期非常不方便,比如求两个日期之间相差的月份?该怎么办呢?;//文件名:date.inc.php3;//在使用这两个函数前,要先将日期或日期时间转换成timestamp类型。;//如:;//$today=mktime(0,0,0,date('m'),date('d'),date('Y'));;/****模拟sqlserver中的dateadd函数*******;$part;类型:string;取值范围:year,month,day,hour,min,sec;表示:要增加的日期的哪个部分;$n;类型:数值;表示:要增加多少,根据$part决定增加哪个部分;可为负数;$datetime类型:timestamp;表示:增加的基数;返回;类型:timestamp;**************结束**************/;function;dateadd($part,$n,$datetime){;$year=date('Y',$datetime);;$month=date('m',$datetime);;$day=date('d',$datetime);;$hour=date('H',$datetime);;$min=date('i',$datetime);;$sec=date('s',$datetime);;$part=strtolower($part);;$ret=0;;switch;($part);{;case;'year':;$year+=$n;;break;;case;'month':;$month+=$n;;break;;case;'day':;$day+=$n;;break;;case;'hour':;$hour+=$n;;break;;case;'min':;$min+=$n;;break;;case;'sec':;$sec+=$n;;break;;default:;return;$ret;;break;;};$ret=mktime($hour,$min,$sec,$month,$day,$year);;return;$ret;;};;/****模拟sqlserver中的datediff函数*******;$part;类型:string;取值范围:year,month,day,hour,min,sec;表示:要增加的日期的哪个部分;$date1,$date2;类型:timestamp;表示:要比较的两个日期;返回;类型:数值;**************结束*(*************/;function;datediff($part,$date1,$date2){;//$diff=$date2-$date1;;$year1=date('Y',$date1);;$year2=date('Y',$date2);;$month2=date('m',$date2);;$month1=date('m',$date1);;$day2=date('d',$date2);;$day1=date('d',$date1);;$hour2=date('d',$date2);;$hour1=date('d',$date1);;$min2=date('i',$date2);;$min1=date('i',$date1);;$sec2=date('s',$date2);;$sec1=date('s',$date1);;$part=strtolower($part);;$ret=0;;switch;($part);{;case;'year':;$ret=$year2-$year1;;break;;case;'month':;$ret=($year2-$year1)*12+$month2-$month1;;break;;case;'day':;$ret=(mktime(0,0,0,$month2,$day2,$year2)-mktime(0,0,0,$month1,$day1,$year1))/(3600*24);;break;;case;'hour':;$ret=(mktime($hour2,0,0,$month2,$day2,$year2)-mktime($hour1,0,0,$month1,$day1,$year1))/3600;;break;;case;'min':;$ret=(mktime($hour2,$min2,0,$month2,$day2,$year2)-mktime($hour1,$min1,0,$month1,$day1,$year1))/60;;break;;case;'sec':;$ret=$date2-$date1;;break;;default:;return;$ret;;break;;};return;$ret;;};};;
标签: PHP