now - php time format

How to get the current date and time in PHP? (20)

its very simple

echo $date = date('Y-m-d H:i:s');

Which PHP function can return the current date/time?

According to the article How to Get Current Datetime (NOW) with PHP, there are two common ways to get the current date. To get current datetime (now) with PHP, you can use the date class with any PHP version, or better the datetime class with PHP >= 5.2.

Various date format expressions are available here.

Example using date

This expression will return NOW in format Y-m-d H:i:s.

    echo date('Y-m-d H:i:s');

Example using datetime class

This expression will return NOW in format Y-m-d H:i:s.

    $dt = new DateTime();
    echo $dt->format('Y-m-d H:i:s');

Best way to get the current time and date is by date function in php

$date = date('FORMAT'); // FORMAT Eg : Y-m-d H:i:s

$current_date =  date('Y-m-d H:i:s');


$now_date = date('FORMAT', time()); // FORMAT Eg : Y-m-d H:i:s

To set the server time zone


Different time zone list is here

Date Format depends too :

echo date("d/m/Y H:i:sa");    // 13/04/2017 19:38:15pm

If you are Bangladeshi. And if you want get time of Dhaka then use it

$date = new DateTime();
$date->setTimeZone(new DateTimeZone("Asia/Dhaka"));
$get_datetime = $date->format('d.m.Y H:i:s');

If you want a different timescale, please use:

$tomorrow  = mktime(0, 0, 0, date("m")  , date("d")+1, date("Y"));
$lastmonth = mktime(0, 0, 0, date("m")-1, date("d"),   date("Y"));
$nextyear  = mktime(0, 0, 0, date("m"),   date("d"),   date("Y")+1);

echo date("Y/m/d H:i:s");

PHP's date function can do this job


Description :

string date ( string $format [, int $timestamp = time() ] )

Returns a string formatted according to the given format string using the given integer timestamp or the current time if no timestamp is given.

Examples :

$today = date("F j, Y, g:i a");                 // March 10, 2001, 5:16 pm
$today = date("m.d.y");                         // 03.10.01
$today = date("j, n, Y");                       // 10, 3, 2001
$today = date("Ymd");                           // 20010310
$today = date('h-i-s, j-m-y, it is w Day');     // 05-16-18, 10-03-01, 1631 1618 6 Satpm01
$today = date('\i\t \i\s \t\h\e jS \d\a\y.');   // it is the 10th day.
$today = date("D M j G:i:s T Y");               // Sat Mar 10 17:16:18 MST 2001
$today = date('H:m:s \m \i\s\ \m\o\n\t\h');     // 17:03:18 m is month
$today = date("H:i:s");                         // 17:16:18
$today = date("Y-m-d H:i:s");                   // 2001-03-10 17:16:18 (the MySQL DATETIME format)

PHP's time() returns a current unix timestamp. With this, you can use the date() function to format it to your needs.

$date = date('Format String', time());

As Paolo mentioned in the comments, the second argument is redundant. The following snippet is equivalent to the one above:

$date = date('Format String');

Set your time zone:


Then call the date functions

$date = date('Y-m-d H:i:s');

Since PHP 5.2.0 you can do it using OOP and DateTime() as well (of course if you prefer OOP):

$now = new DateTime();
echo $now->format('Y-m-d H:i:s');    // MySQL datetime format
echo $now->getTimestamp();           // Unix Timestamp -- Since PHP 5.3

And to specify the timezone:

$now = new DateTime(null, new DateTimeZone('America/New_York'));
$now->setTimezone(new DateTimeZone('Europe/London'));    // Another way
echo $now->getTimezone();

The time would go by your server time. An easy workaround for this is to manually set the timezone by using date_default_timezone_set before the date() or time() functions are called to.

I'm in Melbourne, Australia so I have something like this:


Or another example is LA - US:


You can also see what timezone the server is currently in via:


So something like:

$timezone = date_default_timezone_get();
echo "The current server timezone is: " . $timezone;

So the short answer for your question would be:

// Change the line below to your timezone!
$date = date('m/d/Y h:i:s a', time());

Then all the times would be to the timezone you just set :)

You can use this code.

  $currentDateTime = date('Y-m-d H:i:s');
  echo $currentDateTime;

You can use this format also

$date = date("d-m-Y");


$date = date("Y-m-d H:i:s"); 

 We can use date function and set default timezone.


  echo "Today is " . date("Y/m/d") . "<br>";
  echo "Today is " . date("Y.m.d") . "<br>";
  echo "Today is " . date("Y-m-d") . "<br>";
  echo "Today is " . date("l");
  echo "The time is " . date("h:i:sa");


$date = date('m/d/Y h:i:s a', time());

works, but how also to know if it's EST, PST?

echo "<b>".date('l\, F jS\, Y ')."</b>";

Prints like this

Sunday, December 9th, 2012

// Simply:
$date = date('Y-m-d H:i:s');

// Or:
$date = date('Y/m/d H:i:s');

// This would return the date in the following formats respectively:
$date = '2012-03-06 17:33:07';
// Or
$date = '2012/03/06 17:33:07';

 * This time is based on the default server time zone.
 * If you want the date in a different time zone,
 * say if you come from Nairobi, Kenya like I do, you can set
 * the time zone to Nairobi as shown below.


// Then call the date functions
$date = date('Y-m-d H:i:s');
// Or
$date = date('Y/m/d H:i:s');

// date_default_timezone_set() function is however
// supported by PHP version 5.1.0 or above.

For a time-zone reference, see List of Supported Timezones.


Date Function returns a string formatted according to the given format string using the given integer timestamp or the current time if no timestamp is given. In other words, timestamp is optional and defaults to the value of time().

And the parameters are -

format - Required. Specifies the format of the timestamp

timestamp - (Optional) Specifies a timestamp. Default is the current date and time

How to get a Simple Date

The required format parameter of the date() function specifies how to format the date (or time).

Here are some characters that are commonly used for dates:

  1. d - Represents the day of the month (01 to 31)
  2. m - Represents a month (01 to 12)
  3. Y - Represents a year (in four digits)
  4. l (lowercase 'L') - Represents the day of the week

Other characters, like "/", ".", or "-" can also be inserted between the characters to add additional formatting.

The example below formats today's date in three different ways:

echo "Today is " . date("Y/m/d") . "<br>";
echo "Today is " . date("Y.m.d") . "<br>";
echo "Today is " . date("Y-m-d") . "<br>";
echo "Today is " . date("l");

Some Useful Links

echo("<p class='time'>".date('H:i:s')."</p>");
echo("<p class='date'>".date('d/m/Y')."</p>");