![Nuevo formato de Fecha PHP [Ejemplo completo]](https://www.baulphp.com/wp-content/uploads/2021/07/Nuevo-formato-de-Fecha-PHP-Ejemplo-completo-780x420.jpg)
Nuevo formato de Fecha PHP. Si deseamos personalizar una fecha dada, ya sea una variable o si bien extraída de la base de datos. Podemos, aplicar estos 5 ejemplos que pondré en este artículo para lograr el objetivo.
¿Cómo cambiar el formato de fecha en PHP?
Para convertir el formato de fecha y hora PHP proporciona la función strtotime() y date(). Cambiamos el formato de fecha de un formato a otro.
Por ejemplo, hemos almacenado la fecha en formato MM-DD-AAAA en una variable, y queremos cambiarla al formato DD-MM-AAAA.
Podemos lograr esta conversión usando la función strtotime() y date(). Estas son las funciones incorporadas de PHP. Strtotime() convierte primero la fecha en segundos y, a continuación, se utiliza la función date() para reconstruir la fecha en cualquier formato.
A continuación, se dan algunos ejemplos para convertir el formato de fecha.
Nuevo formato de Fecha PHP
En las siguientes líneas mostraremos 5 formas para convertir la fecha de manera instantánea.
Cambiar AAAA-MM-DD a DD-MM-AAAA
En el siguiente ejemplo, tenemos la fecha 2021-07-18 en formato AAAA-MM-DD, y la convertiremos a 18-07-2021 en formato DD-MM-AAAA.
A) Utilice strtotime() y date():
$originalDate = "2021-07-18"; $newDate = date("d-m-Y", strtotime($originalDate));
Salida
//18-07-2021
(Consulte la documentación de strtotime y date en el sitio PHP).
B) Clase DateTime
Hay que tener en cuenta que la solución fue rápida. Sin embargo, para conversiones más extensas, realmente debería usar la clase DateTime para analizar y formatear las fechas ya sean en variables o extraídas desde la base de datos MySQL.
$dateString = "2021-07-18"; $myDateTime = DateTime::createFromFormat('Y-m-d', $dateString); $newDateString = $myDateTime->format('d-m-Y');
C) Función date_format PHP
Esta es otra opción que se puede usar para convertir fechas personalizadas en las salidas finales.
$dateString = "2021-08-09"; $newDateString = date_format(date_create_from_format('Y-m-d', $dateString), 'd-m-Y');
Primero le estamos dando el formato a la variable llamado $dateString
. Luego le está diciendo el formato en el que quiere que esté $newDateString
. Por lo tanto, esta variable tenemos que imprimir en el navegador.
Si el formato de origen siempre es «Y-m-d» (aaaa-mm-dd), simplemente use DateTime:
<?php $fecha= '2021-07-18'; $date = new DateTime($fecha); echo $date->format('d.m.Y'); // 18.07.2021 echo $date->format('d-m-Y'); // 18-07-2021 ?>
D) Usando función IMPLODE
Otra alternativa es usando array_reverse para invertir la cadena y conjuntamente con la función IMPLODE del PHP. Veamos un ejemplo completo.
<?php $fecha= '2021-07-18'; echo implode('-', array_reverse(explode('-', $fecha))); ?>
E) Función EXPLODE PHP
También otra posibilidad es usar esta función para dividir una cadena de fecha y ordenarlo de manera inversa, según las partes divididas, a continuación, un ejemplo completo.
<?php $oldDate = '2021-07-18'; $arr = explode('-', $oldDate); echo $newDate = $arr[2].'-'.$arr[1].'-'.$arr[0]; ?>
Formatear fechas con PHP: Conclusión
Si estamos trabajando con base de datos es recomendable a la hora de guardar la información usar el (type=»date») para que el input sea de fecha y se guarde correctamente en MySQL.
Por otro lado, si deseamos visualizar la fecha de diferentes formas, en este artículo hemos visto 5 formas de formatear fechas con PHP.
Espero que esta breve explicación les ayude en sus proyectos web.
hola profesor, tengo una situacion con la fecha, envio los datos del formulario con formato date el campo fecha y al recuperarlo con post me devuelve una cadena vacia, a q se debe esto como solucionarlo? muchas gracias
Muchas gracias por tu aporte colega! muy útil. Saludos.