Изменить вывод даты из MySQL
Сделала себе таблицу, в которой помечаю, когда заменяла наполнитель котам. К сожалению, знаний по PHP и MySQL нет, просто исопльзую куски кода, которые удаётся нагуглить. Премного обяжете, если исправите этот код так, чтобы дата выводилась день-месяц-год, а не наоборот. Спасибо.
<?php
header('Content-Type: text/html; charset=utf-8');
$con_str=mysql_connect('sql208.byethost22.com', 'b22_20575378', 'SFag234a', 'b22_20575378_sand');
if(mysql_connect('sql208.byethost22.com','b22_20575378')){
echo "Hello!!!";
}
mysql_select_db('b22_20575378_sand',$con_str);
$result=mysql_query("SELECT * FROM `b22_20575378_sand`.`sand`");
while($row = mysql_fetch_array($result)){
$id=$row['id'];
$date=$row['date'];
$some=$row['some'];
echo "<p>$date</p>";
}
mysql_close();
?>
Ответы (2 шт):
Автор решения: Алексей Шиманский
→ Ссылка
$date = new DateTime($row['date']);
echo $date->format('d-m-Y');
Виды форматирования можно посмотреть в документации: https://www.php.net/manual/ru/datetime.format.php
На самом деле для этой цели сам php не нужен. Можно это сделать средствами БД:
DATE_FORMAT("2017-06-15", "%d-%m-%Y") as `date`
Список возможных параметров форматирования указан тут: https://www.w3schools.com/sql/func_mysql_date_format.asp
Автор решения: Knyaz71
→ Ссылка
Варианты:
- Смена формата на стороне базы и получение как "date2"
$result=mysql_query("SELECT *, DATE_FORMAT(date, '%d-%m-%Y') as date2 FROM `b22_20575378_sand`.`sand`");
И тогда соответственно заменить
$date=$row['date'];
на
$date=$row['date2'];
- Смена формата на стороне PHP
$date=date('d-m-Y', strtotime($row['date']));

