aquí está una función que lo hará por usted con precisión (redondeando, sin cortar):
function getTimestamp()
{
$microtime = floatval(substr((string)microtime(), 1, 8));
$rounded = round($microtime, 3);
return date("Y-m-d H:i:s") . substr((string)$rounded, 1, strlen($rounded));
}
Explicación nación:
microtime() devuelve 2 números como 1 cadena, delimitada por un espacio. el segundo número es la cantidad de segundos desde la época de Unix, y el primer número es la cantidad de microsegundos desde el segundo número. Básicamente, el primer número es la cantidad de microsegundos expresados en un formato de precisión de 8 (0.00000000) y los finales 0s nunca se cortan.
Redondeamos esto a una precisión de 3 (0.00), cortamos el 0 inicial y lo agregamos a la marca de tiempo real.
Por alguna razón, el documento php para usted, microsegundos, no parece ser compatible. Recibo 0.000 cada vez que uso ese método. Así que recurrí a microtime() como solución de respaldo.
Gracias amigo ..... buen trabajo. Eres el mejor, porque iam buscar una semana en internet no tiene solución. – Smith
Hola Westie todavía tenía problemas, el HORARIO era 2 horas más rápido ... ejemplo 22: 07: 45.434 HORAS debería ser 20. – Smith
Ese es un problema con su servidor: deberá configurar la zona horaria. – Westie