Méthode setTimezone de la classe DateTime
La méthode setTimezone modifie le fuseau horaire de l'objet DateTime. Elle prend comme paramètre un objet de la classe DateTimeZone. Elle retourne l'objet DateTime modifié.
Syntaxe
public DateTime::setTimezone(DateTimeZone $timezone): DateTime
Exemple
Définissons le fuseau horaire 'America/New_York' pour la date actuelle :
<?php
$date = new DateTime('now', new DateTimeZone('UTC'));
$date->setTimezone(new DateTimeZone('America/New_York'));
echo $date->format('Y-m-d H:i:s');
?>
Résultat de l'exécution du code :
'2023-11-15 10:30:00'
Exemple
Modifions le fuseau horaire d'un objet DateTime existant :
<?php
$date = new DateTime('2023-01-01 12:00:00', new DateTimeZone('Europe/Moscow'));
$date->setTimezone(new DateTimeZone('Asia/Tokyo'));
echo $date->format('Y-m-d H:i:s');
?>
Résultat de l'exécution du code :
'2023-01-01 18:00:00'
Voir aussi
-
la fonction
date,
qui formate une date/heure -
la fonction
date_default_timezone_set,
qui définit le fuseau horaire par défaut -
la classe
DateTimeZone,
qui représente un fuseau horaire