Я новичок в PHP и пытаюсь получить дату из моей базы данных и отформатировать ее из этого формата: гггг-мм-дд чч: мм: сс в этот формат: дд-мм-гггг чч: мм: сс. Моей первой мыслью было преобразовать формат перед сохранением на сервере, но я прочитал, что это плохая практика, поэтому я пытаюсь сделать это при выводе данных.
Дело в том, что это не такработает, когда я использую функцию Format, она меняет формат, но неправильно.
В этом примере я использую строку формата 'MM / dd / yyyy', но я уже пробовал использовать другие форматы ивывод всегда один и тот же.
Столбец таблицы представлен в формате datetime, но я экспериментировал с форматами text и varchar, в первом случае вывод такой же, как и в формате datetime, а во втором случаеЯ просто получаю первые четыре числа.
Еще одна вещь, я использую PDO.
Это мой запрос:
public function funcaoTesteGetValues() {
$query = "SELECT teste_data,FORMAT(teste_data,'MM/dd/yyyy') AS 'nova_data' FROM teste";
$stmt = $this->conexao->prepare($query);
$stmt->execute();
return $stmt->fetchAll(\PDO::FETCH_OBJ);
}
Вот вывод:
[teste_data] => 2015-12-04 04:04:00 => формат базы данных (дата-время)
[nova_data] => 20 151 204 040 400 => форматированный вывод
Что янужно:
04-12-2015 04: 04: 00