gmmktime

Get Unix timestamp for a GMT date

&reftitle.description; ``int``false```gmmktime` `int` `hour` ``int``null```minute`&null; ``int``null```second`&null; ``int``null```month`&null; ``int``null```day`&null; ``int``null```year`&null;

Identical to `mktime` except the passed parameters represents a GMT date. `gmmktime` internally uses `mktime` so only times valid in derived local time can be used.

Like `mktime`, optional arguments may be left out in order from right to left, with any omitted arguments being set to the current corresponding GMT value.

Calling `gmmktime` without any arguments is not supported, and will result in an `ArgumentCountError`. `time` can be used to get the current timestamp.

&reftitle.parameters;

`hour`

- The number of the hour relative to the start of the day determined by `month`, `day` and `year`. Negative values reference the hour before midnight of the day in question. Values greater than 23 reference the appropriate hour in the following day(s).

`minute`

- The number of the minute relative to the start of the `hour`. Negative values reference the minute in the previous hour. Values greater than 59 reference the appropriate minute in the following hour(s).

`second`

- The number of seconds relative to the start of the `minute`. Negative values reference the second in the previous minute. Values greater than 59 reference the appropriate second in the following minute(s).

`month`

- The number of the month relative to the end of the previous year. Values 1 to 12 reference the normal calendar months of the year in question. Values less than 1 (including negative values) reference the months in the previous year in reverse order, so 0 is December, -1 is November, etc. Values greater than 12 reference the appropriate month in the following year(s).

`day`

- The number of the day relative to the end of the previous month. Values 1 to 28, 29, 30 or 31 (depending upon the month) reference the normal days in the relevant month. Values less than 1 (including negative values) reference the days in the previous month, so 0 is the last day of the previous month, -1 is the day before that, etc. Values greater than the number of days in the relevant month reference the appropriate day in the following month(s).

`year`

- The year

&reftitle.returnvalues;

Returns a `int` Unix timestamp on success, or &false; if the timestamp doesn't fit in a PHP integer.

&reftitle.changelog;

&Version; | &Description;
8.0.0 | `hour` is no longer optional. If you need a Unix timestamp, use `time`.
8.0.0 | `minute`, `second`, `month`, `day` and `year` are nullable now.

&reftitle.examples;

### `gmmktime` basic example

    <?php
    // Prints: July 1, 2000 is on a Saturday
    echo "July 1, 2000 is on a " . date("l", gmmktime(0, 0, 0, 7, 1, 2000));
    ?>

&reftitle.seealso;

- The `DateTimeImmutable` class
- `mktime`
- `date`
- `time`