Cree una fecha y hora a partir de una marca de tiempo con este nuevo método de PHP 8.4
- Publicado el 15 junio, 2024
- Palabras: 149
Crear una fecha y hora a partir de una marca de tiempo de Unix será más conveniente en PHP 8.4 con el nuevo método createFromTimestamp().
Admitirá tanto una marca de tiempo de Unix típica como marcas de tiempo que contengan microsegundos:
$dt = DateTimeImmutable::createFromTimestamp(1718337072);
$dt->format('Y-m-d'); // 2024-06-14
$dt = DateTimeImmutable::createFromTimestamp(1718337072.432);
$dt->format('Y-m-d h:i:s.u'); // 2024-06-14 03:51:12.432000
Con PHP 8.3 y versiones anteriores, debes utilizar el método createFromFormat() para convertir una marca de tiempo en una instancia DateTime o DateTimeImmutable. Como puedes ver a continuación, no es demasiado complicado, pero sería bueno tener un nuevo método para encargarse de ambos casos a continuación:
$dt = DateTimeImmutable::createFromFormat('U', (string) 1718337072);
// DateTimeImmutable @1718337072 {#7948
// date: 2024-06-14 03:51:12.0 +00:00,
// }
$dt = DateTimeImmutable::createFromFormat('U.u', (string) 1718337072.432);
// DateTimeImmutable @1718337072 {#7950
// date: 2024-06-14 03:51:12.432 +00:00,
// }
Para quienes usan la biblioteca Carbon PHP, ya hay disponible un método createFromTimestamp(). ¡Es alentador que PHP también esté incorporando este nuevo método a nivel de lenguaje!
Carbon\Carbon::createFromTimestamp(1718337072.432);
// Carbon\Carbon @1718337072 {#7981
// date: 2024-06-14 03:51:12.432 UTC (+00:00),
// }
Carbon\CarbonImmutable::createFromTimestamp(1718337072);
// Carbon\CarbonImmutable @1718337072 {#7999
// date: 2024-06-14 03:51:12.0 UTC (+00:00),
// }
Antonio Jenaro
Web Developer
Fuente: Laravel news
Inicia la conversación
Hazte miembro de Antonio Jenaro para comenzar a comentar.
Regístrate ahora¿Ya estás registrado? Inicia sesión