Я извлекаю данные даты и времени из mysql, из которых извлекаются данные из одной строки.
2011-04-11 19:31:30
Я хотел переформатировать дату и время в d-m-Y H:i:s
, поскольку я использую date_format()
приведенный ниже кодработает просто отлично.
$date = new DateTime($users['registerDate']);
echo $date->format('d-m-Y H:i:s');
Однако я не хочу идти объектно-ориентированным путем только для переформатирования, потому что я буду использовать код внутри цикла foreach, а это значит, что мне придется инициализировать класс DateTimeснова и снова.
Я попытался сделать это процедурным способом, используя следующий код.
$date = $users['registerDate'];
echo date_format($date, 'Y-m-d H:i:s');
приведенный выше код не работает для меня и возвращает следующую ошибку.
Предупреждение: date_format () ожидает, что параметр 1 будет DateTime, строка указана в /Applications/MAMP/htdocs/kokaris/administrator/resources/library/models/users/users.php в строке 21
Что может быть неправильным?
Данное решение прекрасно работает для процедурного способа.
echo date('m-d-Y',strtotime($users['registerDate']));
Однако я хотел бы знать, какой из них будет лучшимМожно решить вышеуказанный процедурный путь или путь ООП.
$date = new DateTime($users['registerDate']);
echo $date->format('d-m-Y H:i:s');
Учитывая, что я буду использовать код внутри цикла foreach, он может повторяться более ста раз.