J'ai PHP 5.2.10 et PHP 5.2.14 (build x32 non-threadsafe Win32) installé sur un serveur Windows 2008 R2 et sur Windows 7 64 bits.Pourquoi PHP 5.2.14 ne va-t-il afficher aucune erreur (même depuis la ligne de commande)?
Pour une raison quelconque, PHP 5.2.14 refuse d'afficher les messages d'erreur.
Même quand je configurer les paramètres suivants dans php.ini
Je ne suis pas d'une erreur, si j'utilise 5.2.14:
error_reporting = E_ALL
display_errors = On
Cela se produit même lors de l'exécution d'un script de test à partir de la ligne de commande à l'aide php.exe
avec une erreur de syntaxe délibérée:
c:\php>
php test.php
PHP utilise le fichier php.ini
correct parce que je peux voir mes paramètres changent quand je lance php.exe -i
.
Je remarque également que php.exe
dans PHP 5.2.14 est très lent à démarrer.
Lorsque j'effectue le même ensemble de tests en utilisant PHP 5.2.10 sur les mêmes machines, je reçois très bien les messages d'erreur.
Les deux fichiers sont stockés php.ini
(basé sur de php.ini-recommended
) mais avec les error_reporting
et display_errors
paramètres modifiés.
vous apprenez quelque chose de nouveau chaque jour. Il s'avère que PHP n'a pas pu charger l'extension SQLite3 car l'extension pdo.dll (qui dépend de cela) n'était pas décommentée. Avec 'display_startup_errors' réglé sur off, cela a semblé provoquer des erreurs d'analyse. Merci beaucoup. – Kev
En fait ... enquêter plus loin. Quelqu'un a placé des guillemets autour de la valeur des drapeaux 'error_reporting'. C'est la vraie cause. c'est-à-dire -error_reporting = "E_ALL & ~ E_NOTICE" '. – Kev