You are here

public function SmsTestTime::getCurrentMicroTime in SMS Framework 2.1.x

Same name and namespace in other branches
  1. 2.x tests/modules/sms_test_time/src/SmsTestTime.php \Drupal\sms_test_time\SmsTestTime::getCurrentMicroTime()

Returns the current system time with microsecond precision.

This method should be used to obtain the current system time, with microsecond precision, at the time the method was called.

This method can replace many instances of

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

with

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

or the equivalent using the injected service.

This method should only be used when the current system time is actually needed, such as with timers or time interval calculations. If only the time at the start of the request and microsecond precision is needed, use TimeInterface::getRequestMicroTime().

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.

Overrides TimeInterface::getCurrentMicroTime

See also

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

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

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

File

tests/modules/sms_test_time/src/SmsTestTime.php, line 63

Class

SmsTestTime
Time service with a predictable time.

Namespace

Drupal\sms_test_time

Code

public function getCurrentMicroTime() {
  return $this->date
    ->format('U.u');
}