Introducción
En este post veremos cómo obtener o formatear la fecha del sistema con microsegundos, utilizando PHP.
A lo que me refiero es que obtendremos la fecha actual, que traerá también la representación de microsegundos.
Los resultados del formato se verían más o menos así:
2018-05-08 22:55:14.010688
En donde es el año, mes, día. Seguido de la hora, minutos y segundos. Y después de los segundos, los microsegundos.
Un microsegundo es la millonésima parte de un segundo.
Formatear y obtener fecha incluyendo microsegundos
Es muy fácil obtenerla. Recomiendo primero establecer bien la zona horaria. De ahí, el código (tomado de aquí) se ve así:
<?php $ahora = DateTime::createFromFormat('U.u', number_format(microtime(true), 6, '.', '')); $formateado = $ahora->format("Y-m-d H:i:s.u"); ?>
Al imprimir la variable $formateado, se podría ver algo así:
2018-05-08 23:09:55.253292
Incluso si lo ponemos en un ciclo while (para comprobar que los valores cambian) se nota la diferencia. El código (sólo para probar) se ve así:
<?php $contador = 10; while($contador > 0){ $ahora = DateTime::createFromFormat('U.u', number_format(microtime(true), 6, '.', '')); $formateado = $ahora->format("Y-m-d H:i:s.u"); echo "$formateado<br>"; $contador--; } ?>
Con estos resultados (al momento de escribir este post):
2018-05-08 23:11:02.897194 2018-05-08 23:11:02.897584 2018-05-08 23:11:02.897611 2018-05-08 23:11:02.897627 2018-05-08 23:11:02.897643 2018-05-08 23:11:02.897659 2018-05-08 23:11:02.897674 2018-05-08 23:11:02.897689 2018-05-08 23:11:02.897704 2018-05-08 23:11:02.897719
Y así podemos obtener la fecha actual con microsegundos en PHP.