3v4l.org

run code in 300+ PHP versions simultaneously
<?php date_default_timezone_set( 'UTC' ); function micro_time_precise_date_time_immutable( $microTime ) { $timestamp = (int) floor($microTime); $u = sprintf("%06d", ($microTime - $timestamp) * 1000000); return DateTimeImmutable::createFromFormat( 'Y-m-d H:i:s.u', date( 'Y-m-d H:i:s.'.$u, $timestamp ) ); } $mt = microtime( TRUE ); $a = DateTimeImmutable::createFromFormat('U.u', sprintf( '%.6F', $mt ) ); $b = micro_time_precise_date_time_immutable( $mt ); $format = 'Y-m-d H:i:s.u'; var_dump( $a->format( $format ) ); var_dump( $b->format( $format ) );

preferences:
27.75 ms | 409 KiB | 5 Q