sqlserver2000 Personal Edition simulates two functions of SQLSERVER: dateadd, datediff

WBOY
Release: 2016-07-29 08:34:03
Original
919 people have browsed it

//File name: date.inc.php3
//Before using these two functions, you must first convert the date or date time into the timestamp type.
//For example:
//$today=mktime(0,0,0,date("m"),date("d"),date("Y"));
/****Simulate the dateadd function in sqlserver************
$part Type: string
Value range: year, month, day, hour, min, sec
Represents: which part of the date to be added
$n Type: Numeric
Represents: How much to increase, which part to add is decided based on $part
Can be a negative number
$datetime type: timestamp
Represents: the base of the increase
Return type: timestamp
*********** ***Finish**************/
function dateadd($part,$n,$datetime){
$year=date("Y",$datetime);
$m>$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;
}
/****Simulate the datediff function in sqlserver************
$part Type: string
Value range: year, month, day, hour, min, sec
Represents: which part of the date to add
$date1 ,$date2 Type: timestamp
Represents: two dates to be compared
Return type: numerical value
**************End*(*************/
function datediff($part,$date1,$date2){
//$diff=$date2-$date1;
$year1=date("Y",$date1);
$year2=date("Y",$date2);
$m>$m>$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;
}
?>

The above introduces the two functions of sqlserver2000 Personal Edition that simulate SQLSERVER: dateadd and datediff, including the content of sqlserver2000 Personal Edition. I hope it will be helpful to friends who are interested in PHP tutorials.

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template