Estoy tratando de convertir una fecha de yyyy-mm-dd
a dd-mm-yyyy
(pero no en SQL); sin embargo, no sé cómo la función de fecha requiere una marca de tiempo, y no puedo obtener una marca de tiempo de esta cadena.
¿Cómo es esto posible?
php
date
formatting
matthy
fuente
fuente
Respuestas:
Uso
strtotime()
ydate()
:(Consulte la documentación de tiempo de ejecución y fecha en el sitio PHP).
Tenga en cuenta que esta fue una solución rápida a la pregunta original. Para conversiones más extensas, realmente debería usar la
DateTime
clase para analizar y formatear :-)fuente
Si desea evitar la conversión de tiempo de trabajo (por ejemplo, tiempo de trabajo no puede analizar su entrada), puede usar,
O equivalente:
Primero le está dando el formato en el que está $ dateString. Luego le está diciendo el formato en el que desea que esté $ newDateString.
O si el formato fuente siempre es "Ymd" (aaaa-mm-dd), simplemente use DateTime :
fuente
DateTime::createFromFormat()
- es realmente más útil questrtotime()
strtotime()
útil para convertir el formato de tipo verdadero (Ymd) a otros formatos, peroDateTime::createFromFormat()
es universal. Es comoSTR_TO_DATE
en MySQLstrtotime()
Utilizar:
Sin la sobrecarga de conversión de fechas, no estoy seguro de que importe mucho.
fuente
Este código funciona para todos los formatos de fecha.
Puede cambiar el orden de las variables de reemplazo como $ 3- $ 1- $ 2 debido a su antiguo formato de fecha.
fuente
Para más información, consulte la documentación de
strtotime
.O incluso más corto:
fuente
También otra posibilidad oscura:
No sé si lo usaría pero aún así :)
fuente
¡La respuesta más votada es realmente incorrecta!El manual de tiempo de ejecución de PHP aquí establece que "la función espera recibir una cadena que contenga un formato de fecha en inglés".
Lo que realmente significa es que espera un formato de fecha estadounidense en los Estados Unidos, como "mdY" o "m / d / Y".Eso significa que una fecha proporcionada como "Ymd" puede ser mal interpretada por
strtotime
. Debe proporcionar la fecha en el formato esperado.Escribí una pequeña función para devolver fechas en varios formatos. Usar y modificar a voluntad.
Si alguien convierte eso en una clase, me alegraría si eso se compartiera.fuente
Hay dos formas de implementar esto:
1)
2)
fuente
Puedes probar la
strftime()
función. Ejemplo simple:strftime($time, '%d %m %Y');
fuente
Use esta función para convertir de cualquier formato a cualquier formato
fuente
A continuación se muestra el código PHP para generar la fecha de mañana usando
mktime()
y cambiar su formato a dd / mm / aaaa y luego imprimirlo usandoecho
.fuente
fuente
Puede cambiar el formato usando date () y strtotime ().
$ date = '18/09/2019';
echo date ('dm-y', strtotime ($ date));
Resultado:
18-09-19
Podemos cambiar el formato cambiando el (dmy).
fuente
Para esta conversión específica también podemos usar una cadena de formato.
Obviamente, esto no funcionará para muchas otras conversiones de formato de fecha, pero dado que solo estamos reorganizando las subcadenas en este caso, esta es otra forma posible de hacerlo.
fuente
strtotime()
. :-)fuente
Manera simple Uso
strtotime()
ydate()
:Con tiempo
fuente
Uso
date_create
ydate_format
Prueba esto.
fuente