We now have a youtube channel. Subscribe!

PHP | date_format() Function

PHP date_format() Function


Hello folks! welcome back to a new edition of our tutorial on PHP. In this tutorial guide, we are going to be studying about the PHP date_format() Function.

The PHP date_format() function is an alias of DateTime::format() function. This PHP function accepts a DateTime object and a format string (which represents a desired date and time format) as parameters, and formats the object in the specified format and returns the result.

Syntax

Following below is the syntax to use this function -

date_format($date_time_object, $format)


Parameter Details

ParameterDescription
objectRequired. Specifies a DateTime object returned by date_create()
formatRequired. Specifies the format for the date. The following characters can be used:
  • d - The day of the month (from 01 to 31)
  • D - A textual representation of a day (three letters)
  • j - The day of the month without leading zeros (1 to 31)
  • l (lowercase 'L') - A full textual representation of a day
  • N - The ISO-8601 numeric representation of a day (1 for Monday, 7 for Sunday)
  • S - The English ordinal suffix for the day of the month (2 characters st, nd, rd or th. Works well with j)
  • w - A numeric representation of the day (0 for Sunday, 6 for Saturday)
  • z - The day of the year (from 0 through 365)
  • W - The ISO-8601 week number of year (weeks starting on Monday)
  • F - A full textual representation of a month (January through December)
  • m - A numeric representation of a month (from 01 to 12)
  • M - A short textual representation of a month (three letters)
  • n - A numeric representation of a month, without leading zeros (1 to 12)
  • t - The number of days in the given month
  • L - Whether it's a leap year (1 if it is a leap year, 0 otherwise)
  • o - The ISO-8601 year number
  • Y - A four digit representation of a year
  • y - A two digit representation of a year
  • a - Lowercase am or pm
  • A - Uppercase AM or PM
  • B - Swatch Internet time (000 to 999)
  • g - 12-hour format of an hour (1 to 12)
  • G - 24-hour format of an hour (0 to 23)
  • h - 12-hour format of an hour (01 to 12)
  • H - 24-hour format of an hour (00 to 23)
  • i - Minutes with leading zeros (00 to 59)
  • s - Seconds, with leading zeros (00 to 59)
  • u - Microseconds (added in PHP 5.2.2)
  • e - The timezone identifier (Examples: UTC, GMT, Atlantic/Azores)
  • I (capital i) - Whether the date is in daylights savings time (1 if Daylight Savings Time, 0 otherwise)
  • O - Difference to Greenwich time (GMT) in hours (Example: +0100)
  • P - Difference to Greenwich time (GMT) in hours:minutes (added in PHP 5.1.3)
  • T - Timezone abbreviations (Examples: EST, MDT)
  • Z - Timezone offset in seconds. The offset for timezones west of UTC is negative (-43200 to 50400)
  • c - The ISO-8601 date (e.g. 2013-05-05T16:34:42+00:00)
  • r - The RFC 2822 formatted date (e.g. Fri, 12 Apr 2013 12:01:05 +0200)
  • U - The seconds since the Unix Epoch (January 1 1970 00:00:00 GMT)

and the following predefined constants can also be used (available since PHP 5.1.0):

  • DATE_ATOM - Atom (example: 2013-04-12T15:52:01+00:00)
  • DATE_COOKIE - HTTP Cookies (example: Friday, 12-Apr-13 15:52:01 UTC)
  • DATE_ISO8601 - ISO-8601 (example: 2013-04-12T15:52:01+0000)
  • DATE_RFC822 - RFC 822 (example: Fri, 12 Apr 13 15:52:01 +0000)
  • DATE_RFC850 - RFC 850 (example: Friday, 12-Apr-13 15:52:01 UTC)
  • DATE_RFC1036 - RFC 1036 (example: Fri, 12 Apr 13 15:52:01 +0000)
  • DATE_RFC1123 - RFC 1123 (example: Fri, 12 Apr 2013 15:52:01 +0000)
  • DATE_RFC2822 - RFC 2822 (Fri, 12 Apr 2013 15:52:01 +0000)
  • DATE_RFC3339 - Same as DATE_ATOM (since PHP 5.1.3)
  • DATE_RSS - RSS (Fri, 12 Aug 2013 15:52:01 +0000)
  • DATE_W3C - World Wide Web Consortium (example: 2013-04-12T15:52:01+00:00)

Return Value

This built-in function returns the formatted date string.

PHP Version

This function was first introduced as part of core PHP v 5.2.1 and, works with all the later versions.

Example1

Try the following example below. Here, we are creating a DateTime object, formatting it, and then printing the result to the screen -

<?php
   //Creating a DateTime object
   $date_time_Obj = date_create("25-09-1989");
   //formatting the date/time object
   $format = date_format($date_time_Obj, "y-d-m");
   print("Date in yy-dd-mm format: ".$format); 
?>

Output

When the above code is executed, it will produce the following result -

Date in yy-dd-mm format: 89-25-09

Example2

Following example formats a DateTime object as date and time separately -

<?php
   $dateString = '11-06-2012 12:50:41 GMT';
   $dateTimeObj = date_create($dateString);
   $date = date_format($dateTimeObj, 'd-m-y');
   print("Date: ".$date); 
   print("\n");
   $time = date_format($dateTimeObj, 'H:i:s');
   print("Time: ".$time); 
?>

Output

When the above code is executed, it will produce the following result -

Date: 11-06-12
Time: 12:50:41

Example3

The following example shows few valid format string in PHP -

<?php
   $dateTimeObj = date_create("11-06-2012 12:50:41 GMT");
   print("Date in y-m-d format: ".date_format($dateTimeObj, 'Y-m-d'));
   print("\n");
   print("Date in d/m/y format: ".date_format($dateTimeObj, 'd/m/y'));
   print("\n");
   print("Date in Y-m-d H:i:s format: ".date_format($dateTimeObj, 'Y-m-d H:i:s'));
   print("\n");
   print("Date in G:i:A format: ".date_format($dateTimeObj, 'G-i-A'));
?>

Output

When the above code is executed, it will produce the following result -

Date in y-m-d format: 2012-06-11
Date in d/m/y format: 11/06/12
Date in Y-m-d H:i:s format: 2012-06-11 12:50:41
Date in G:i:A format: 12-50-PM

Example4

Below example creates a new date using the date_format() function -

<?php
   $dateSrc = '2005-04-19 12:50 GMT';
   $dateTime = date_create( $dateSrc);;
   # Now set a new date using date_format();
   date_format( $dateTime, 2000, 12, 12);
   
   echo "New Formatted date is ". $dateTime->format("Y-m-d\TH:i:s\Z");
   echo "
"; # Using second function. $dateTime = new DateTime($dateSrc); $dateTime->setDate( 1999, 10, 12); echo "New Formatted date is ". $dateTime->format("Y-m-d\TH:i:s\Z"); ?>

Output

When the above code is executed, it will produce the following result -

New Formatted date is 2000-12-12T12:50:00Z
New Formatted date is 1999-10-12T12:50:00Z


Alright guys! This is where we are going to be rounding up for this tutorial post. In our next tutorial, we are going to be discussing about the PHP date_isodate_set() Function.

Feel free to ask your questions where necessary and we will attend to them as soon as possible. If this tutorial was helpful to you, you can use the share button to share this tutorial.

Follow us on our various social media platforms to stay updated with our latest tutorials. You can also subscribe to our newsletter in order to get our tutorials delivered directly to your emails.

Thanks for reading and bye for now.

Post a Comment

Hello dear readers! Please kindly try your best to make sure your comments comply with our comment policy guidelines. You can visit our comment policy page to view these guidelines which are clearly stated. Thank you.
© 2023 ‧ WebDesignTutorialz. All rights reserved. Developed by Jago Desain