PHP date

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 use null, the it will default to the current timestamp. In other words, it defaults to the value of the time() 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 characterDescriptionExample returned values
Day
d2 digits with leading zeros that represent the day of the month01 to 31
DThree letters that present the day nameMon through Sun
jDay of the month without leading zeros1 to 31
l (lowercase ‘L’)Full name of the day of the week’sSunday through Saturday
NDay of the week in number according to ISO-86011 (for Monday) through 7 (for Sunday)
S2 characters that represent the ordinal suffix for the day of the month in Englishstndrd or th
wA numeric day of the week0 (for Sunday) through 6 (for Saturday)
zA numeric day of the year, starting from 00 through 365
Week
WWeek number of the year in ISO-8601, weeks starting on MondayExample: 3 (the 3rd week in the year)
Month
FThe full month nameJanuary through December
mThe month number with leading zeros01 through 12
MThree characters that represent the month nameJan through Dec
nThe month number without leading zero1 through 12
tThe Number of days in a month28 through 31
Year
LReturn 1 if it’s a leap year and zero otherwise
oISO-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
YA four-digit represents a year numberExamples: 2020 or 2021
yA two-digit representation of a yearExamples: 99 or 03
Time
aLowercase am or pmam or pm
AUppercase AM or PMAM or PM
BSwatch Internet time000 through 999
g12-hour format of an hour without leading zeros1 through 12
G24-hour format of an hour without leading zeros0 through 23
h12-hour format of an hour with leading zeros01 through 12
H24-hour format of an hour with leading zeros00 through 23
iMinutes with leading zeros00 to 59
sSeconds with leading zeros00 through 59
uMicroseconds.Example: 654321
vMilliseconds.Example: 654
Timezone
eTimezone identifierExamples: UTCGMTEurope/Berlin
I (capital i)Daylight Saving1 if Daylight Saving Time, 0 otherwise.
ODifference to GMT without colon between hours and minutesExample: +0200
PDifference to GMT with a colon between hours and minutesExample: +02:00
pThe same as P, but returns Z instead of +00:00Example: +02:00
TTimezone abbreviationExamples: CESTMDT …
ZTimezone offset in seconds.-43200 through 50400
Full Date/Time
cISO 8601 date2021-07-14T13:38:04+02:00
rRFC 2822 formatted dateWed, 14 Jul 2021 13:38:20 +0200
USeconds 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 &copy; <?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.
Did you find this tutorial useful?