Oihana PHP

formatDateTime.php

Table of Contents

Functions

formatDateTime()  : string
Formats a given date/time string into a specified format and timezone.

Functions

formatDateTime()

Formats a given date/time string into a specified format and timezone.

formatDateTime([string|null $date = null ][, string $timezone = 'UTC' ][, string|null $format = 'Y-m-d\TH:i:s.v\Z' ]) : string

This function attempts to validate and parse the input date string. If the input date is not valid according to the provided format, it defaults to the current date/time ("now"). It then applies the specified timezone and returns the formatted date string.

The $timezone parameter is used only to interpret the input date string. Regardless of the input timezone, the resulting string is always converted to UTC and formatted with a trailing "Z".

Parameters
$date : string|null = null

The input date/time string to format. If null or invalid, "now" is used.

$timezone : string = 'UTC'

The timezone identifier (e.g., 'Europe/Paris'). Defaults to 'UTC'.

$format : string|null = 'Y-m-d\TH:i:s.v\Z'

The date format string compatible with DateTime::format(). Defaults to 'Y-m-d\TH:i:s.v\Z' (ISO 8601 UTC with milliseconds).

Tags
throws
DateInvalidTimeZoneException

If the provided timezone string is invalid.

DateMalformedStringException

If the input date string is malformed or cannot be parsed.

example
echo formatDateTime('2025-07-20 15:30', 'Europe/Paris', 'Y-m-d H:i');
// Output: '2025-07-20 15:30'

echo formatDateTime();
// Output: current date/time in UTC, e.g., '2025-07-20T13:30:20.676Z'
author

Marc Alcaraz (ekameleon)

since
1.0.0
Return values
string

The formatted date/time string, or null if creation fails.

On this page

Search results