Maison > Article > développement back-end > Comment résoudre le problème d'obtention d'une erreur de temps dans la fonction de temps php
Solution à l'erreur d'heure obtenue par la fonction horaire PHP : 1. Définissez le fuseau horaire par défaut à utiliser ; 2. Ouvrez php.ini pour trouver « date.timezone » et supprimez le point-virgule précédent ; l'énoncé du programme.
L'environnement d'exploitation de cet article : système Windows 7, PHP version 7.1, ordinateur Dell G3
Comment résoudre le problème de la fonction d'heure php qui obtient une erreur d'heure ?
La solution à l'erreur d'utilisation de la fonction date pour obtenir l'heure actuelle en PHP
Si vous êtes nouveau en PHP et que vous souhaitez obtenir l'heure actuelle sur la page, toute personne ayant appris la programmation sait utiliser la time function date(), utilisez-le d'abord. La fonction formate une heure/date locale. Écrivons d'abord un code de test. Le temps de sortie est inférieur de 8 heures à l'heure réelle.
Le code est le suivant. :
<?php echo date('Y-m-d H:i:s');
Affiche l'heure actuelle : 2008-10- 12 02:32:17
Étrange, l'heure réelle est : 2008-10-12 10:32:17
Est-ce parce que l'heure date() de PHP est incorrecte et est-ce que 8 heures sont plus courtes ?
Regardez à nouveau l'"Exemple 1. date()" dans le manuel PHP. Il y a un paramètre de fuseau horaire supplémentaire dans la première ligne
// Définissez le fuseau horaire par défaut à utiliser. Disponible depuis PHP 5.1
date_default_timezone_set('UTC');
Il s'avère que depuis php5.1., l'option date.timezone a été ajoutée à php.ini. Elle est désactivée par défaut, ce qui correspond à l'heure affichée. (peu importe la commande php utilisée) sont toutes l'heure moyenne de Greenwich, qui est exactement de 8 heures différente de l'heure de Pékin.
Comment configurer l'heure PHP correcte ?
1. Modifier php.ini. Ouvrez php.ini et recherchez date.timezone. Supprimez le point-virgule = devant et ajoutez Asia/Shanghai à la fin. Redémarrez simplement le serveur Apache - l'inconvénient est que si le programme
est placé sur le serveur de quelqu'un d'autre, php. .ini ne peut pas être modifié, alors que pouvez-vous faire ?
2. Ajoutez une instruction d'initialisation de l'heure dans le programme C'est-à-dire : "date_default_timezone_set("Asia/Shanghai"); "Cela peut être défini arbitrairement par le programmeur, ce que je recommande.
Identifiant de fuseau horaire, les valeurs disponibles en Chine continentale sont : PRC, Asia/Chongqing, Asia/Shanghai, Asia/Urumqi (dans l'ordre Chine, Chongqing, Shanghai, Urumqi), Etc/GMT-8, Asia/Harbin
Hong Kong et Taiwan Régions disponibles : Asie/Macao, Asie/Hong_Kong, Asie/Taipei (Macao, Hong Kong, Taipei dans l'ordre) et Singapour : Asie/Singapour
De cette façon, la sortie est l'heure de Pékin.
Des codes de fuseau horaire plus détaillés, des codes de fuseau horaire, des codes d'index de fuseau horaire, timezone_identifier peuvent être trouvés sur le site officiel.
Apprentissage recommandé : "Tutoriel vidéo PHP"
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!