PHP:¿Cómo convertir el formato de las fechas en campos DATE a dia-mes-año?

De Foros del Web

Tenemos una tabla X, esa tabla contiene un campo DATE. Ese campo almacena una fecha mediante la función CURDATE. Esa función trabaja con el formato: año-mes-dia.

¿Cómo convierto el formato a: dia-mes-año cuando hago el echo()?

Respuesta: Sencillo. Simplemente hacemos un explode de la fecha y la dividimos justo por los guiones. De esa forma almacenamos cada una de las partes de la fecha en un array:

$var = explode('-',$variabledefecha);

Donde $variabledefecha corresponde a tu variable que contiene la fecha que queremos cambiar. Y luego, volvemos a unir el array en el orden dia-mes-año así:

echo "$var[2]-$var[1]-$var[0]";

Y listo. El código completo queda así:

$var = explode('-',$variabledefecha); echo "$var[2]-$var[1]-$var[0]";

Otra forma sería usando una función propia de MySQL. Deberás crear un alias a tu campo y luego llamarlo por su alias. De esta forma:

$ssql = "SELECT DATE_FORMAT(campofecha,'%d/%m/%Y') as fechaok FROM tabla"; $result = mysql_query($ssql);

Donde fechaok es el alias de tu campofecha. Cuando vayas a hacer el echo() debes hacerlo por el alias ya formateada:

echo $row['fechaok'];


--drcyber 13 Abr 2003

Este artículo es parte de las FAQs de PHP y el Manual de PHP.

Herramientas personales