Date and Time Functions
To keep track of the date and time, PHP uses standard Unix
timestamps, which are simply the number of seconds elapsed since midnight,
January 1, 1970. To determine the current timestamp, you can use the
time
function:
echo time();
Because the value is stored as seconds, to obtain the timestamp for this time next week you would use the following, which adds 7 days × 24 hours × 60 minutes × 60 seconds to the returned value:
echo time() + 7 * 24 * 60 * 60;
If you wish to create a timestamp for a given date, you can use the
mktime
function. Its output is the
timestamp 946684800
for the first
second of the first minute of the first hour of the first day of the year
2000:
echo mktime(0, 0, 0, 1, 1, 2000);
The parameters to pass are, in order from left to right:
The number of the hour (0–23)
The number of the minute (0–59)
The number of seconds (0–59)
The number of the month (1–12)
The number of the day (1–31)
The year (1970–2038, or 1901–2038 with PHP 5.1.0+ on 32-bit signed systems)
Note
You may ask why you are limited to the years 1970 through 2038. Well, it’s because the original developers of Unix chose the start of the year 1970 as the base date that no programmer should need to go before! Luckily, because as of version 5.1.0 PHP supports systems using a signed 32-bit integer for the timestamp, dates from 1901 to 2038 are allowed on them. However, a problem even worse than the first comes about because the Unix designers also decided that nobody would be using Unix after ...
Get Learning PHP, MySQL, JavaScript, and CSS, 2nd Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.