PHP: gmdate() function


The gmdate() function is used to get a formatted GMT/UTC date/time.


(PHP 4 and above)


gmdate(format, timestamp)


Name Description Required /
format Day :
d - The numeric day of the month with
leading zeros (01 to 31)
D - Short day abbreviation (three letters). Mon through Sun.
j - Day of the month without leading zeros ( 1 to 31)
l (lowercase 'L') - Full day name (Sunday through Saturday)
N - ISO-8601 numeric representation of a day of a week (1 (for Monday) through 7 (for Sunday).
S - English ordinal suffix for the day of the month, 2 characters (st, nd, rd or th. Works well with j)
w - The numeric day of the week. (0 (for Sunday) through 6 (for Saturday)
z - The numeric day of the year (0 to 365) Week:
W - ISO-8601 numeric representation of week number of year. Week starting from Monday

Month :
F - Full month name. (January through December)
m - Numeric representation of a month with leading zeros (01 to 12)
M - Short month abbreviation (three letters). Jan through Dec
n - Numeric representation of a month, without leading zeros (1 through 12)
t -Number of days of a specified month (28 through 31)

Year :
L - Whether it's a leap year (set 1 if leap year otherwise 0)
o - ISO-8601 year number
Y - Numeric year value in 4 digits (1999)
y - Numeric year value in two digits (1999 as 99)

Time :
a - Lowercase am or pm.
A - Uppercase AM or PM.
B - Swatch Internet time (000 through 999)
g - 12-hour format of an hour without leading zeros (1 to 12)
G - 24-hour format of an hour without leading zeros (0 to 23)
h - 12-hour format of an hour with leading zeros (01 to 12)
H - 24-hour format of an hour with leading zeros(00 to 23)
i - Minutes with leading zeros (00 to 59)
s - Seconds, with leading zeros (00 to 59)
u - Microseconds(numeric value) Example : 574925

Timezone :
e - The timezone identifier (Examples: UTC, Atlantic/Azores)
I - Whether the date is in daylights savings time (set 1 for Daylight Savings Time, 0 otherwise)
O - Difference to Greenwich time (GMT) in hours (Example: +0300).
p - Difference to Greenwich time (GMT) with a colon between hours and minutes (Example: +03:00).
T - Timezone abbreviation. (Examples: EST, MDT)
Z - Timezone offset in seconds. The offset for timezones west of UTC is always negative, and for those east of UTC is always positive. (-43200 through 50400).

Full Date/Time :
c - ISO 8601 date (2004-02-12T15:19:21+00:00)
r - RFC 2822 formatted date. (Thu, 22 Jan 2005 16:01:07 +0200)
U - Seconds since the Unix Epoch (January 1 1970 00:00:00 GMT)
Optional String
timestamp An integer indicates the unixtimestamp. If a timestamp is not supplied, it gives the current local time. Optional integer

Return value:

A formatted date string.

Value Type: String.


echo "Current GMT date/time is  " . gmdate("l F dS Y, H:i");

View the example in the browser

See also

PHP Function Reference

Previous: gettimeofday
Next: gmmktime

PHP: Tips of the Day

Getting all defined constants

To get all defined constants including those created by PHP use the get_defined_constants function:


$constants = get_defined_constants();
var_dump($constants); // pretty large list


array(2250) {
  resource(1) of type (stream)
  resource(2) of type (stream)
  resource(3) of type (stream)

To get only those constants that were defined by your app call the function at the beginning and at the end of your script (normally after the bootstrap process):

$constants = get_defined_constants();
define("HELLO", "hello");
define("WORLD", "world");
$new_constants = get_defined_constants();
$myconstants = array_diff_assoc($new_constants, $constants);


array (
  'HELLO' => 'hello',
  'WORLD' => 'world',

It's sometimes useful for debugging