Convertir fechas en PHP entre MySQL y español
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 } |
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’)
No me sale, sale por defecto las fechas en ingles, y yo quiero en español.
http://www.americageo.com
EXCELENTE LA EXPLICACIÓN, MUY FÁCIL DE ENTENDER MUCHAS GRACIAS POR EL APORTE