How to format an UTC date to use the Z (Zulu) zone designator in php?

In order to get the UTC date in the desired format, you can use something like this:

gmdate('Y-m-d\TH:i:s\Z', $date->format('U'));

In PHP 8 the format character p was added:

$timestamp = new DateTimeImmutable('2013-06-28T22:15:00Z');
echo $timestamp->format('Y-m-d\TH:i:sp');
// 2013-06-28T22:15:00Z

No, there is no special constant for the desired format. I would use:

$date->format('Y-m-d\TH:i:s\Z');

But you will have to make sure that the times you are using are really UTC to avoid interpretation errors in your application.


If you are using Carbon then the method is:

echo $dt->toIso8601ZuluString();    
// 2019-02-01T03:45:27Z