Reputation: 1882
I want to get the current date in yyyy-mm-dd hh:mm:ss format.
I have tried:
gmdate('yyyy-mm-dd hh:mm:ss \G\M\T', time());
Its returning a wierd date:
13131313-1111-2323 0707:1111:3131
Upvotes: 31
Views: 151499
Reputation: 7211
Use below date function to get current time in MySQL format/(As requested on question also)
echo date("Y-m-d H:i:s", time());
Upvotes: 2
Reputation: 46910
You don't have to repeat those format identifiers . For yyyy
you just need to have Y
, etc.
gmdate('Y-m-d h:i:s \G\M\T', time());
In fact you don't even need to give it a default time if you want current time
gmdate('Y-m-d h:i:s \G\M\T'); // This is fine for your purpose
You can get that list of identifiers Here
Upvotes: 59
Reputation: 363
You had selected the time format wrong
<?php
date_default_timezone_set('GMT');
echo date("Y-m-d,h:m:s");
?>
Upvotes: 3
Reputation: 679
gmdate()
is doing exactly what you asked for.
Look at formats here: http://php.net/manual/en/function.gmdate.php
Upvotes: 0
Reputation: 3165
You are repeating the y,m,d
.
Instead of
gmdate('yyyy-mm-dd hh:mm:ss \G\M\T', time());
You should use it like
gmdate('Y-m-d h:m:s \G\M\T', time());
Upvotes: 0
Reputation: 4806
Try this
Check this How do i get the gmt time in php
date_default_timezone_set("UTC");
echo date("Y-m-d H:i:s", time());
Upvotes: 14