“date(): Il n'est pas sûr de s'appuyer sur le système de paramètres de fuseau horaire...”
J'ai eu cette erreur lorsque j'ai demandé de mettre à jour le PHP version à partir de la version 5.2.17 PHP 5.3.21 sur le serveur.
<div style="border:1px solid #990000;padding-left:20px;margin:0 0 10px 0;">
<h4>A PHP Error was encountered</h4>
<p>Severity: Warning</p>
<p>Message: date(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'America/New_York' for 'EDT/-4.0/DST' instead</p>
<p>Filename: libraries/Log.php</p>
<p>Line Number: 86</p>
</div>
Warning: date(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'America/New_York' for 'EDT/-4.0/DST' instead in /filelocation right here/system/libraries/Log.php on line 86
Warning: date(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'America/New_York' for 'EDT/-4.0/DST' instead in /filelocation right here/system/libraries/Log.php on line 99
<div style="border:1px solid #990000;padding-left:20px;margin:0 0 10px 0;">
<h4>A PHP Error was encountered</h4>
<p>Severity: Warning</p>
<p>Message: date(): It is not safe to rely on the system's timezone settings. You are *required* to use the date.timezone setting or the date_default_timezone_set() function. In case you used any of those methods and you are still getting this warning, you most likely misspelled the timezone identifier. We selected 'America/New_York' for 'EDT/-4.0/DST' instead</p>
<p>Filename: libraries/Log.php</p>
<p>Line Number: 99</p>
</div>
Vous devez vous connecter pour publier un commentaire.
Vous avez probablement besoin de mettre le fuseau horaire dans une ligne de configuration dans votre
php.ini
fichier. Vous devriez avoir un bloc comme ceci dans votre php.fichier ini:Si non, ajouter (en remplaçant le fuseau horaire par le vôtre). Après la configuration, assurez-vous de redémarrer httpd (
service httpd restart
).Ici est la liste des fuseaux horaires supportés.
apachectl graceful
est suffisante (au moins, fonctionne pour moi).php.ini
utilisé par apache, exécutez simplement la commande suivantephp -i | grep php.ini
.php --ini
. Il vous donnera également des informations supplémentaires concernant d'éventuelles erreurs.Si vous ne pouvez pas modifier votre php.ini de configuration, vous pouvez tout aussi bien utiliser l'extrait de code suivant au début de votre code:
La liste de fuseaux horaires peut être trouvé à http://www.php.net/manual/en/timezones.php.
Ajouter les lignes suivantes dans votre
index.php
fichier. J'ai trouvé cette lorsque j'ai déplacé mon application à partir de mon XAMPP serveur Apache 2.2 et PHP 5.4...Je vous conseille de le faire dans votre
index.php
fichier au lieu de lephp.ini
fichier.au lieu de
a fonctionné pour moi (qui affiche le courant de l'année et pas plus affiche le message d'erreur).
(Merci à Chris ci-dessus)
Si ce ne sont pas vos options
php.ini
.date_default_timezone
appel.Au lieu de
date
vous pouvez utilisergmdate
.J'ai utilisé
gmdate( "Y" )
quand j'ai eu besoin d'une année pour un droit d'auteur snipplet.Si vous utilisez CodeIgniter et ne pouvez pas modifier le php.ini, j'ai ajouté ce qui suit le début de index.php:
Je garde toujours cette ligne à l'intérieur de codeigniter racine de
index.php
.Pour que mon code fonctionne sur n'importe quel serveurListe des fuseaux horaires Supportés par ici
@Justis m'a indiqué la bonne direction, mais son code ne fonctionne pas pour moi. Ce n':
Documentation: http://www.php.net/manual/en/function.date-default-timezone-get.php
Cette solution n'est pas seulement pour ceux qui ne l'ont pas accès au système. Il est nécessaire pour n'importe quel script lorsque vous l'offrir à quelqu'un d'autre, mais vous. On ne sait jamais sur quel serveur le script va s'exécuter lorsque vous les distribuez à quelqu'un d'autre.
Cette question a été mise sur écoute moi pendant un CERTAIN temps que im essayant d'injecter un "createbucket.php de script" dans compositeur et j'ai toujours dit que mon fuseau horaire est incorrect.
À la fin la seule chose qui a résolu le problème était le suivant:
$ sudo nano /etc/php.ini
De recherche pour fuseau horaire
Vous assurer que vous retirez le
;
Puis enfin
Et vous serez bon d'aller 🙂
J'ai dû mettre des guillemets.
/etc/php.ini: date.timezone = America/Los_Angeles
En plus du réglage de la date.timezone= comme mentionné dans plusieurs réponses,
J'ai trouvé une erreur dans le php.fichier ini qui était de l'empêcher de l'obtention de la date.le fuseau horaire.
La façon que j'ai trouvée c'est par l'exécution de php en ligne de commande dans un terminal.
cela a provoqué une erreur à être déclarés à la ligne 114. Dans mon cas, j'avais pas commenté un réglage pour l'affichage des erreurs '|' entre 2 valeurs. Il n'aimait pas ça.
J'ai enlevé une des valeurs et de l' | et tout était bon, après, que
Une méthode simple pour les deux temps de la zone.
Vous pouvez régler le fuseau horaire dans votre
.htaccess
fichierPour php (ou de votre lieu de résidence).
Une solution rapide, tandis que votre rectifier les incompatibilités, est de désactiver le rapport d'erreurs dans votre
index.php
fichier:Insérer la ligne ci-dessous dans votre index.php ci-dessous
define( ‘_JEXEC’, 1 );
Je suis l'hébergement de mon EC2 et S3 seau en nous-ouest-2 (Oregon). Quand j'étais appel
$s3client->listBuckets()
à la liste existante des seaux dans mon php, j'ai été faire exception -"Uncaught exception 'Exception' with message 'DateTime::__construct(): It is not safe to rely on the system's timezone settings...".
Je l'ai fait ci-dessous les changements pour le faire fonctionner. Partager ces informations dans le cas où une personne est confrontée à problème similaire et une des réponses ci-dessus n'ont pas aidé.
ntpstat
de commande. Si vous obtenez l'erreur, ce lien vous aide à savoir ce qui ne va pas.date.timezone
n'a pas été réglé à une valeur et aussi il a été commenté par défaut. Je onu-commenté par la suppression de ';' avant cette ligne et définissez sa valeur à"UTC"
et enregistré le fichier.sudo service httpd restart
etsudo service ntpd restart
commandes.Après cela, je suis en mesure de faire la liste des seaux avec succès, sans aucune exception. Espérons que cette aide.
Si vous utilisez parallels Plesk panel, de l'essayer, tout d'Abord, Ouvrez les Paramètres de PHP, au bas de la page, changer la date.fuseau horaire par DÉFAUT à l'UTC.
J'ai eu cette erreur d'exécution de php-fpm dans une prison chroot. J'ai essayé de créer etc/php.ini et /usr/share/zoneinfo dans le répertoire chroot, mais ça ne fonctionne pas. J'ai même essayé de strace-ing php-fpm démons pour voir ce fichier, ils manquaient de rien a sauté.
Ainsi dans le cas de Google vous amène ici parce que vous obtenez cette erreur lors de l'utilisation de php-fpm configuré pour chroot, vous pouvez probablement corriger en ajoutant cette ligne à
/etc/php-fpm.d/www.conf
dans la section ENV:Un php-fpm redémarrer normalement requis pour qu'il prenne effet. Espérons que cela aide quelqu'un là-bas.
Dans mon cas particulier, j'ai PHP configuré pour utiliser PHP-FPM (FastCGI Process Manager). Lors de l'exécution de
phpinfo()
à partir de la CLI, je l'ai vu bon fuseau horaire que j'avais mis dans le php.ini, mais c'est toujours incorrect dans le navigateur et causant de mon code à l'échec. J'ai simplement besoin de redémarrer lephp-fpm
service sur le serveur.Vous pouvez aussi avoir besoin de redémarrer le
httpd
service si vous avez édité lephp.ini
Cette réponse au-dessus de CtrlX est la bonne réponse, mais il peut ne pas fonctionner complètement.
J'ai ajouté cette ligne à mon php.ini fichier:
mais il n'a pas supprimé l'erreur PHP pour tous mes fichiers car certains de mes scripts PHP sont dans des sous-dossiers. J'ai donc dû modifier .htaccess fichier de configuration de php.ini pour être utilisé de manière récursive (dans les sous-dossiers):
où account_name est votre compte cpanel nom et public_html est le dossier de votre php.fichier ini est dans.
Pour le panneau de l'utilisateur:
Créer un fuseau horaire local.fichier ini dans votre projet, mis en place la configuration dans le menu fixe-composer.yml,
fuseau horaire.ini
C'est une solution facile pour qui ne connaît pas le fuseau horaire.
Si vous n'avez pas accès au fichier
php.ini
, de créer ou de modifier un.htaccess
fichier dans la racine de votre domaine ou de sous et ajouter ce (généré par cpanel):