Twój format nie jest formatem zrozumiałym dla parsera .
W Twoim przypadku 13
nie jest „miesiącem”. Więc parser nie rozumie do tej pory.
Powinieneś użyć DateTime::createFromFormat()
:
$date = DateTime::createFromFormat('m-d-Y H:i:s','04-13-2018 0:00:53');
echo $date->format('Y-m-d H:i:s');
Wyjście:
2018-04-13 00:00:53
Pamiętaj, że formatem może być również:'m-d-Y G:i:s'
z G
dla „24-godzinnego formatu godziny bez wiodących zer” .