Home >Backend Development >PHP Tutorial >Compare the difference between two times and dates in PHP_PHP Tutorial
Here we all use timestamps
mktime(hour, minute, second, month, day, year, [is_dst])
Its parameters can be omitted from right to left, and any omitted parameters will be set to the current value of the local date and time.
Parameter Description
hour optional. Specified hours.
minute is optional. Specified minutes.
second is optional. Specifies seconds.
month is optional. Specifies the numeric month.
day is optional. Specify days.
year is optional. Specified year. On some systems, legal values are between 1901 – 2038. However, this limitation no longer exists in PHP Tutorial 5.
is_dst Optional. Set to 1 if the time is during daylight saving time (dst), 0 otherwise, or -1 if unknown. As of 5.1.0, the is_dst parameter is deprecated. Therefore the new time zone handling features should be used
In our daily life, we often compare the morning and evening of time. It is very simple for us to judge the size of time. However, the comparison of time is not just a comparison of simple numbers, so it is relatively complicated. So how to compare the size of two times in php?
To compare the size of two times, we need to convert the time into timestamp format and then compare. This is the most common method. The commonly used functions are: strtotime()
Grammar format: strtotime(time,now)
If time is an absolute time, the now parameter has no effect
If time is a relative time, the corresponding parameter is provided by the now function. If no now parameter is provided, the corresponding time is the current local time.
Example: Compare the size of two absolute times
Code:
$zero1=date(“y-m-d h:i:s”);
$zero2=”2010-11-29 21:07:00′;
echo "The time of zero1 is: ".$zero1."
”;
echo "The time of zero2 is: ".$zero2."
”;
if(strtotime($zero1)echo “zero1 is earlier than zero2′; ($zero2)){
}else{
echo “zero2 is earlier than zero1′;
}
?>
Output result:
The time of zero1 is: 2010-11-30 21:12:55
The time of zero2 is: 2010-11-29 21:07:00
zero2 is earlier than zero1
Note: You can develop your thinking based on examples
Calculate the difference between two dates
Olympic Games countdown, Asian Games countdown, birthday countdown, these countdowns can be realized by calculating the difference between two dates, and also need to use the strottime() function.
To implement the countdown, you need to integer the difference between the two times, and you need to use the function ceil()
The function of the ceil() function is to find the smallest integer that is not less than a given real number
Example: Countdown applet
Example code:
$zero1=strtotime (date(“y-m-d h:i:s”)); //Current time
$zero2=strtotime (“2011-2-03 24:00:00′); //New Year time
$guonian=ceil(($zero2-$zero1)/86400); //60s*60min*24h
echo “There are still $guonian days until the Chinese New Year!”;
?>
Output result:
There are still 66 days until Chinese New Year!
strtotime() function analysis
Definition and usage
The strtotime() function parses any English text datetime description into a unix timestamp.
Grammar
strtotime(time,now) parameter description
time specifies the time string to be parsed.
now is the timestamp used to calculate the return value. If this parameter is omitted, the current time is used.
Description
This function expects a string containing a US English date format and attempts to parse it into a unix timestamp (number of seconds since january 1 1970 00:00:00 gmt) with a value relative to the time given by the now parameter, If this parameter is not provided, the current system time