Summary: in this tutorial, you’ll learn how to use the PHP date()
function to format a timestamp using a specified format.
Introduction to the PHP date() function
The date()
function formats a timestamp using a specified format:
date(string $format, int|null $timestamp = null): string
Code language: PHP (php)
The date()
function has two parameters:
$format
is a string that determines how the$timestamp
should be formatted.$timestamp
is an Unix timestamp. The$timestamp
parameter is optional. If you omit the$timestamp
or usenull
, the it will default to the current timestamp. In other words, it defaults to the value of thetime()
function.
The date()
function returns the formatted date string.
PHP date format parameters
To format a date, you use the following date format parameters:
format character | Description | Example returned values |
---|---|---|
Day | — | — |
d | 2 digits with leading zeros that represent the day of the month | 01 to 31 |
D | Three letters that present the day name | Mon through Sun |
j | Day of the month without leading zeros | 1 to 31 |
l (lowercase ‘L’) | Full name of the day of the week’s | Sunday through Saturday |
N | Day of the week in number according to ISO-8601 | 1 (for Monday) through 7 (for Sunday) |
S | 2 characters that represent the ordinal suffix for the day of the month in English | st , nd , rd or th |
w | A numeric day of the week | 0 (for Sunday) through 6 (for Saturday) |
z | A numeric day of the year, starting from 0 | 0 through 365 |
Week | — | — |
W | Week number of the year in ISO-8601, weeks starting on Monday | Example: 3 (the 3rd week in the year) |
Month | — | — |
F | The full month name | January through December |
m | The month number with leading zeros | 01 through 12 |
M | Three characters that represent the month name | Jan through Dec |
n | The month number without leading zero | 1 through 12 |
t | The Number of days in a month | 28 through 31 |
Year | — | — |
L | Return 1 if it’s a leap year and zero otherwise | |
o | ISO-8601 week-numbering year. This has the same value as Y , except that if the ISO week number (W ) belongs to the previous or next year, that year is used instead. | Examples: 1999 or 2003 |
Y | A four-digit represents a year number | Examples: 2020 or 2021 |
y | A two-digit representation of a year | Examples: 99 or 03 |
Time | — | — |
a | Lowercase am or pm | am or pm |
A | Uppercase AM or PM | AM or PM |
B | Swatch Internet time | 000 through 999 |
g | 12-hour format of an hour without leading zeros | 1 through 12 |
G | 24-hour format of an hour without leading zeros | 0 through 23 |
h | 12-hour format of an hour with leading zeros | 01 through 12 |
H | 24-hour format of an hour with leading zeros | 00 through 23 |
i | Minutes with leading zeros | 00 to 59 |
s | Seconds with leading zeros | 00 through 59 |
u | Microseconds. | Example: 654321 |
v | Milliseconds. | Example: 654 |
Timezone | — | — |
e | Timezone identifier | Examples: UTC , GMT , Europe/Berlin |
I (capital i) | Daylight Saving | 1 if Daylight Saving Time, 0 otherwise. |
O | Difference to GMT without colon between hours and minutes | Example: +0200 |
P | Difference to GMT with a colon between hours and minutes | Example: +02:00 |
p | The same as P , but returns Z instead of +00:00 | Example: +02:00 |
T | Timezone abbreviation | Examples: CEST , MDT … |
Z | Timezone offset in seconds. | -43200 through 50400 |
Full Date/Time | — | — |
c | ISO 8601 date | 2021-07-14T13:38:04+02:00 |
r | RFC 2822 formatted date | Wed, 14 Jul 2021 13:38:20 +0200 |
U | Seconds since January 1 1970 00:00:00 GMT (the Unix Epoch) |
PHP date() function examples
Let’s take some practical examples of using the date()
function.
1) Using the PHP date() function to show the current year example
The following example uses the date()
function to show how to display the current year:
<?php
echo date('Y');
Code language: PHP (php)
This is useful especially when you want to display the copyright on the footer of a website or a web application:
<p>Copyright © <?php echo date('Y') ?> - by phptutorial.net. All rights reserved.</p>
Code language: PHP (php)
2) Using the date() function to format a date for the MySQL database
To insert a date into a datetime column in the MySQL database, you use the following date format:
YYYY-MM-DD HH:MM:SS
Code language: PHP (php)
In PHP, it’s equivalent to the following format:
Y-m-d H:i:s
Code language: PHP (php)
For example:
<?php
$created_at = date("Y-m-d H:i:s");
echo $created_at;
Code language: PHP (php)
Output:
2021-07-14 13:03:08
Code language: PHP (php)
Summary
- Use the PHP
date()
function to format a timestamp in a specified format.