gmstrftime

Format a GMT/UTC time/date according to locale settings

&warn.deprecated.function-8-1-0.alternatives;

- `gmdate`
- `IntlDateFormatter::format`

&reftitle.description; ``string``false```gmstrftime` `string` `format` ``int``null```timestamp`&null;

Behaves the same as `strftime` except that the time returned is Greenwich Mean Time (GMT). For example, when run in Eastern Standard Time (GMT -0500), the first line below prints "Dec 31 1998 20:00:00", while the second prints "Jan 01 1999 01:00:00".

This function depends on operating system locale information, which might be inconsistent with each other, or not available at all. Instead use the `IntlDateFormatter::format` method.

&reftitle.parameters;

`format`

- See description in `strftime`.

&date.timestamp.description;
&reftitle.returnvalues;

Returns a string formatted according to the given format string using the given `timestamp` or the current local time if no timestamp is given. Month and weekday names and other language dependent strings respect the current locale set with `setlocale`. On failure, &false; is returned.

&reftitle.changelog;

&Version; | &Description;
8.0.0 | `timestamp` is nullable now.

&reftitle.examples;

### `gmstrftime` example

    <?php
    setlocale(LC_TIME, 'en_US');
    echo strftime("%b %d %Y %H:%M:%S", mktime(20, 0, 0, 12, 31, 98)) . "\n";
    echo gmstrftime("%b %d %Y %H:%M:%S", mktime(20, 0, 0, 12, 31, 98)) . "\n";
    ?>

&reftitle.seealso;

- `IntlDateFormatter::format`
- `DateTimeInterface::format`
- `strftime`