php8.5
Home/ Manual/ time / duration/ Time\Duration::fromSeconds

Time\Duration::fromSeconds

PHP function Edit on GitHub ✎

(PHP 8 >= 8.6.0)

Creates a duration from a number of seconds and nanoseconds

Description

Time\Duration::fromSeconds(int $seconds, int $nanoseconds = 0): Time\Duration

Creates a non-negative duration of seconds seconds plus nanoseconds nanoseconds.

Parameters

seconds

The number of whole seconds. Must be greater than or equal to 0.

nanoseconds

The fraction of a second, in nanoseconds. Must be between 0 and 999999999, inclusive.

Return Values

Returns a new Time\Duration object.

Errors/Exceptions

  • If seconds is negative, a ValueError is thrown.
  • If nanoseconds is negative, a ValueError is thrown.
  • If nanoseconds is greater than or equal to 1000000000, a ValueError is thrown.

Examples

Time\Duration::fromSeconds example

php
<?php
var_dump(\Time\Duration::fromSeconds(90));
var_dump(\Time\Duration::fromSeconds(1, 500_000_000));

try {
    \Time\Duration::fromSeconds(0, 1_000_000_000);
} catch (ValueError $e) {
    echo $e->getMessage(), PHP_EOL;
}

The above example will output:

output
object(Time\Duration)#1 (3) {
  ["seconds"]=>
  int(90)
  ["nanoseconds"]=>
  int(0)
  ["negative"]=>
  bool(false)
}
object(Time\Duration)#2 (3) {
  ["seconds"]=>
  int(1)
  ["nanoseconds"]=>
  int(500000000)
  ["negative"]=>
  bool(false)
}
Time\Duration::fromSeconds(): Argument #2 ($nanoseconds) must be less than 1_000_000_000

See Also

  • Time\Duration::fromNanoseconds
  • Time\Duration::fromMicroseconds
  • Time\Duration::fromMilliseconds
  • Time\Duration::fromMinutes
  • Time\Duration::fromHours
  • Time\Duration::fromIso8601DurationString

Source: reference/datetime/time/duration/fromseconds.xml · from the official PHP manual (php/doc-en)