function TimeInterface::getRequestMicroTime

Same name and namespace in other branches
  1. 9 core/lib/Drupal/Component/Datetime/TimeInterface.php \Drupal\Component\Datetime\TimeInterface::getRequestMicroTime()
  2. 8.9.x core/lib/Drupal/Component/Datetime/TimeInterface.php \Drupal\Component\Datetime\TimeInterface::getRequestMicroTime()
  3. 11.x core/lib/Drupal/Component/Datetime/TimeInterface.php \Drupal\Component\Datetime\TimeInterface::getRequestMicroTime()

Returns the timestamp for the current request with microsecond precision.

This method should be used to obtain the current system time, with microsecond precision, at the start of the request. It will be the same value for the life of the request (even for long execution times).

If the request is not available it will fallback to the current system time with microsecond precision.

This method can replace instances of

$request_time_float = $_SERVER['REQUEST_TIME_FLOAT'];
$request_time_float = $requestStack->getCurrentRequest()->server
    ->get('REQUEST_TIME_FLOAT');
$request_time_float = $request->server
    ->get('REQUEST_TIME_FLOAT');

and many instances of

$microtime = microtime();
$microtime = microtime(TRUE);

with

$request_time = \Drupal::time()->getRequestMicroTime();

or the equivalent using the injected service.

Using the time service, rather than other methods, is especially important when creating tests, which require predictable timestamps.

Return value

float A Unix timestamp with a fractional portion.

See also

\Drupal\Component\Datetime\TimeInterface::getRequestTime()

\Drupal\Component\Datetime\TimeInterface::getCurrentTime()

\Drupal\Component\Datetime\TimeInterface::getCurrentMicroTime()

File

core/lib/Drupal/Component/Datetime/TimeInterface.php, line 85

Class

TimeInterface
Defines an interface for obtaining system time.

Namespace

Drupal\Component\Datetime

Code

public function getRequestMicroTime();

Buggy or inaccurate documentation? Please file an issue. Need support? Need help programming? Connect with the Drupal community.