sql >> Base de Datos >  >> RDS >> Mysql

Cambiar formato de fecha (en base de datos o salida) a dd/mm/yyyy - PHP MySQL

En PHP, podría:

  • Transforme la fecha en una marca de tiempo, usando strtotime
  • Formatearlo usando date

Un poco así, diría:

$timestamp = strtotime($date_from_db);
echo date('d/m/Y', $timestamp);

Pero esto solo funcionará para fechas entre 1970 y 2038, como timestamps se almacenan como enteros de 32 bits, contados desde 1970-01-01.


En MySQL, supongo que date_format la función haría el truco.
Por ejemplo:

mysql> select date_format(curdate(), '%d/%m/%Y');
+------------------------------------+
| date_format(curdate(), '%d/%m/%Y') |
+------------------------------------+
| 19/03/2010                         |
+------------------------------------+
1 row in set (0.03 sec)


Y, en aras de la exhaustividad, otra solución, en PHP, que no sufre la limitación de 1970-2038 sería usar DateTime clase, y, especialmente :

Por ejemplo, esta parte del código:

$date = new DateTime('2010-03-19');
echo $date->format('d/m/Y');

obtendría esta salida:

19/03/2010