2016-04-01 8 views
-2

Wenn ich eine Zeichenfolge mit Format "MM-YYYY" wie 04-2016, haben, wie Sie sie in Datetime-Format mysql, das ist "YYYY- MM-TT hh: mm: ss ".MM-JJJJ bis JJJJ-MM-TT hh: mm: ss auf php und mysql

Ich frage mich wie: 2016-04-01 00:00:00, Ich benutze PHP mit MySQL.

+0

schreiben Ihren Code in Frage –

+2

Mögliche Duplikat von [Speichern von Datetime als UTC in PHP/MySQL] (http://stackoverflow.com/questions/1349280/storing-datetime-as-utc-in-php-mysql) –

+1

'$ string = '04 -2016 '; $ dto = DateTime :: erstellenFromFormat ('d-m-Y H: i: s', '01 - '. $ Zeichenfolge.' 00:00:00 '); echo $ dto-> Format ('Ymd H: i: s'); ' –

Antwort

1
$d = '04-2016'; 

$date = DateTime::createFromFormat('d-m-Y', ('01-'.$d)); 
$date->setTime(0, 0, 0); 

echo $date->format('Y-m-d H:i:s'); // Outputs 2016-04-01 00:00:00 

So etwas wie die oben können Sie das gewünschte Format in PHP bekommen, dann haben Sie es einfach in die Datenbank einfügen, wie Sie sich gerade befinden.

+0

Danke, das Ergebnis ist 2016-04-03 00:00:00, immer noch falsch –

+0

@FadlyDzil Ja, tut mir leid, ich versehentlich '01' anstelle von' d' verwendet , sollte jetzt funktionieren. – Mikey

0

Sie Datum Zeit Format mit Am haben und pm dann unter Code verwenden

$d='03-03-2016 03:07:22'; 

echo date('Y-m-d h:i:s a',strtotime($d)); 
Verwandte Themen