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().

Cree una fecha y hora a partir de una marca de tiempo con este nuevo método de PHP 8.4

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

Antonio Jenaro

Web Developer

Archivado en:

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