Saltar al contenido
LINWIND de Windows a Linux

~/diseno-y-web

Convertir fechas en PHP entre MySQL y español

Marcos · · 1 min

Aunque es muy sencillo siempre que tenemos que pasar fechas de español a MySQL y a la inversa tenemos que pensarlo unos segundos, hay determinadas formas de conseguirlo de forma rápida y sencilla como las que le voy a comentar a continuación.

La mejor forma de realizar una conversión entre la fecha que nos devuelve MySQL a nuestro idioma el español es utilizando DATE_FORMAT de MySQL , podemos encontrar mucha más información referente a la forma de trabajar con fechas en Dev MySQL. A continuación os pongo una consulta que nos devolvería la fecha con el formato día/mes/año aunque podríamos indicarle que nos la devolviera como a nosotros nos interese.

mysql_query("SELECT DATE_FORMAT(campo_fecha,'%d/%m/%Y') FROM tabla", $conexion);
// El resultado será devuelto con el formato día/mes/año
// Otros ejemplos
// DATE_FORMAT(campo_fecha,'%d de %m de %Y')

Si lo que queremos realizar es lo contrario, por poner un ejemplo recoger la fecha de nacimiento de alguien de un formulario e introducirla en nuestra base de datos podremos realizarlo de la siguiente manera:

En caso de que la fecha tenga el formato día/mes/año

function cambiarfecha_mysql($fecha){
    list($dia,$mes,$ano)=explode("/",$fecha);
    $fecha="$ano-$mes-$dia";
    return $fecha
}

En caso de que la fecha tenga el formato día de mes de año

function cambiarfecha_mysql($fecha){
    list($dia,$mes,$ano)=explode(" de ",$fecha);
    $fecha="$ano-$mes-$dia";
    return $fecha
}

# sigue leyendo

3 comentarios

  1. Mi método para convertir de una cadena a formato fecha en MySQL es la siguiente:

    DATE_FORMAT(STR_TO_DATE(‘».$_REQUEST[«fechallamada»].»‘, ‘%m/%d/%Y’), ‘%Y-%m-%d’)

Deja un comentario

Tu correo no se publica.

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.