Réglez le fuseau horaire en php

Réglez le fuseau horaire en php

La valeur du fuseau horaire est importante pour tout site Web car les valeurs de date et de temps sont affichées en fonction de cette valeur. Le script PHP utilise la valeur du fuseau horaire du serveur Web par défaut. Cette valeur de fuseau horaire peut être modifiée en modifiant la valeur du date.fuseau horaire directive dans le php.ini Fichier de configuration ou en ajoutant l'entrée de la valeur du fuseau horaire à l'intérieur du .htaccess fichier ou utiliser plusieurs fonctions intégrées. Différentes façons de définir la valeur du fuseau horaire en PHP ont été montrées dans ce tutoriel.

Définissez la valeur du fuseau horaire en modifiant le PHP.fichier ini

L'une des façons les plus simples de définir le fuseau horaire par défaut est de modifier le date.fuseau horaire Directive à l'intérieur du php.ini déposer. Supposons que vous souhaitiez définir le fuseau horaire par défaut sur 'Asie / Dhaka'. Ouvrir le php.ini fichier et rechercher l'emplacement du date.fuseau horaire directif. Modifiez la ligne en utilisant la ligne suivante:

date.fuseau horaire = 'Asie / Dhaka'


Enregistrez le fichier et redémarrez le serveur Web pour définir la date et l'heure du serveur en fonction de la valeur du fuseau horaire modifié.

Définissez la valeur du fuseau horaire en modifiant le .fichier htaccess

Modification du .Le fichier htaccess est un autre moyen de définir la valeur du fuseau horaire par défaut. Ouvrir le .fichier htaccess et ajoutez la ligne suivante pour définir la valeur du fuseau horaire par défaut sur 'Asie / Dhaka':

PHP_VALUE Date.fuseau horaire «Australie / Melbourne»


Enregistrez le fichier et redémarrez le serveur Web pour définir la date et l'heure du serveur en fonction de la valeur du fuseau horaire modifié.

Définissez la valeur du fuseau horaire en utilisant la fonction date_default_timezone_set ()

La date_default_timezone_set () est la fonction PHP intégrée pour définir la valeur du fuseau horaire. La sortie de toutes les fonctions intégrées de PHP liées au fuseau horaire par défaut sera modifiée après avoir modifié la valeur du fuseau horaire à l'aide de la fonction date_default_timezone_set (). La syntaxe de cette fonction est donnée ci-dessous:

Syntaxe

bool date_default_timezone_set (chaîne de temps)


Cette fonction n'a qu'un seul argument obligatoire. Cet argument définit un fuseau horaire particulier. Il renvoie vrai si la valeur de fuseau horaire valide est passé dans l'argument. Sinon, il renvoie faux. La fonction date_default_timezone_get () est utilisée pour lire la valeur actuelle du fuseau horaire du serveur. Ainsi, cette fonction peut être utilisée pour vérifier que le fuseau horaire est correctement défini après la définition du nouveau fuseau horaire en utilisant la fonction date_default_timezone_set ().

Exemple 1: Définissez le fuseau horaire en utilisant la fonction date_default_timezone_set ()

Créez un fichier PHP avec le script suivant pour définir le fuseau horaire par défaut sur 'Asie / Dhaka' en utilisant la fonction date_default_timezone_set (). La fonction date_default_timezone_get () a été utilisée deux fois pour imprimer la valeur du fuseau horaire avant et après l'utilisation de la fonction date_default_timezone_set ().

// imprime le fuseau horaire actuel
écho "Le fuseau horaire actuel est " . date_default_timezone_get () . "
"
// modifie le fuseau horaire actuel
date_default_timezone_set ('asia / dhaka');
// imprime le fuseau horaire changé
écho "Le fuseau horaire actuel est modifié en ". date_default_timezone_get () . ""
?>


La sortie suivante montre que le fuseau horaire par défaut était UTC, Et le fuseau horaire a changé pour Asie / Dhaka Après avoir établi le nouveau fuseau horaire:

Définissez la valeur du fuseau horaire en utilisant la fonction ini_set ()

L'ini_set () est une fonction très utile de PHP pour modifier n'importe quelle directive PHP en utilisant un script sans accéder au PHP.fichier ini. Ce tutoriel a discuté plus tôt que la date.Directive du fuseau horaire requise pour modifier pour modifier la valeur actuelle du fuseau horaire. Ainsi, la fonction ini_set () peut être utilisée pour modifier cette valeur directive. La syntaxe de cette fonction est donnée ci-dessous:

Syntaxe

String | false ini_set (option String $, chaîne | int | float | bool | null $ valeur)


Le premier argument de la fonction prend le nom de directive, et le deuxième argument de la fonction prend la valeur. Il renvoie une valeur de chaîne sur le succès et un faux à l'échec.

Exemple 2: Définissez le fuseau horaire en utilisant la fonction ini_set ()

Créez un fichier PHP avec le script suivant qui définira le fuseau horaire par défaut sur «America / Chicago» en utilisant la fonction ini_set (). La fonction date_default_timezone_get () a été utilisée deux fois pour imprimer la valeur du fuseau horaire avant et après l'utilisation de la fonction ini_set ().

// imprime le fuseau horaire actuel
écho "Le fuseau horaire actuel est " . date_default_timezone_get () . "
"
// modifie le fuseau horaire actuel
ini_set ('date.Timezone ',' America / Chicago ');
// imprime le fuseau horaire modifié
écho "Le fuseau horaire actuel est modifié en ". date_default_timezone_get () . ""
?>


La sortie suivante montre que le fuseau horaire par défaut était UTC, Et le fuseau horaire a changé pour 'America / Chicago' Après avoir établi le nouveau fuseau horaire:

Définissez la valeur du fuseau horaire en utilisant la classe DateTimeZone

L'utilisation de la classe DateTimeZone est une autre façon de modifier la valeur du fuseau horaire par défaut du serveur. Les utilisations de cette classe pour modifier le fuseau horaire ont été montrées dans l'exemple suivant:

Exemple 3: Définissez le fuseau horaire en utilisant la classe DateTimeZone

Créez un fichier PHP avec le script suivant qui modifiera la valeur du fuseau horaire deux fois et imprimera la date et l'heure actuelles en fonction de la valeur actuelle du fuseau horaire. La fonction Display () a été définie dans le script pour imprimer la valeur actuelle du fuseau horaire et la date et l'heure actuelles basées sur le fuseau horaire. Il a été appelé pour la première fois pour afficher la sortie en fonction du fuseau horaire par défaut, qui est 'UTC'. Il a été appelé la deuxième fois pour afficher la sortie en fonction du fuseau horaire modifié, 'Asie / Dhaka'. Il a été appelé la troisième fois pour afficher la sortie en fonction du fuseau horaire modifié, qui est 'Canada / Atlantique'.

// Créer un objet date
$ date = new DateTime ();
affichage de la fonction ()

Date de $ global;
$ timezone = $ date-> getTimeZone ();
// imprime le fuseau horaire actuel et la datetime en fonction de la période de temps
écho "Le fuseau horaire actuel est " . $ timezone-> getName ()."
"
Echo "La date et l'heure actuelles sont" . $ date-> format ('d-m-y h: i: s') . "
"

// Fonction d'appel pour imprimer la sortie en fonction du fuseau horaire par défaut
afficher();
// change le fuseau horaire en «Asie / Dhaka»
$ date-> setTimeZone (new DateTimeZone ('Asia / Dhaka'));
// appelle la fonction pour imprimer la sortie en fonction du fuseau horaire modifié
afficher();
// change le fuseau horaire en «Canada / Atlantique»
$ date-> setTimeZone (new DateTimeZone («Canada / Atlantic»));
// appelle la fonction pour imprimer la sortie en fonction du fuseau horaire modifié
afficher();
?>


La sortie suivante apparaîtra après l'exécution du script précédent:

Conclusion

Cinq façons différentes de modifier la valeur du fuseau horaire sont affichées dans ce tutoriel. Si l'utilisateur PHP n'a pas la permission de modifier le PHP.ini ou .Fichier HTACCESS, alors l'utilisateur peut utiliser l'une des fonctions intégrées discutées dans ce tutoriel pour modifier la valeur du fuseau horaire.