Comment résoudre les problèmes d'affichage des erreurs PHP
P粉469090753
2023-08-20 11:45:59
<p>J'ai vérifié mon fichier PHP ini (<code>php.ini</code>) et <code>display_errors</code> est défini et le rapport d'erreurs est également <code>E_ALL</ code> . J'ai redémarré mon serveur Web Apache. </p>
<p>J'ai même mis ces lignes en haut de mon script, mais il ne détecte même pas les simples erreurs d'analyse. Par exemple, je déclare une variable avec <code>"$"</code>, mais je n'ai pas l'instruction de fermeture <code>";"</code>. Mais tous les scripts affichent une page blanche sur ces erreurs, mais j'aimerais réellement voir <strong>errors</strong> dans la sortie du navigateur. </p>
<pre class="brush:php;toolbar:false;">error_reporting(E_ALL);
ini_set('display_errors', 1);</pre>
<p>Y a-t-il autre chose à faire ? </p>
Vous ne pouvez pas détecter les erreurs d'analyse dans le même fichier avec la sortie d'erreur d'exécution activée, car il analyse le fichier avant d'exécuter quoi que ce soit (et comme il rencontre des erreurs en cours de route, il n'exécutera rien). Vous devez modifier la configuration réelle du serveur afin que display_errors soit activé et que le niveau de rapport d'erreur approprié soit utilisé. Si vous n'avez pas accès à php.ini, vous pourrez peut-être utiliser .htaccess ou similaire, selon le serveur.
Cette question peut fournir des informations supplémentaires.
Environnement de développement
Cela fonctionne toujours pour moi :
Cependant, cela n'oblige pas PHP à afficher les erreurs d'analyse qui se produisent dans le même fichier - la seule façon d'afficher ces erreurs est de modifier votre fichier php.ini pour inclure cette ligne :
(peut aussi fonctionner si vous n'avez pas accès à
php.ini
,那么将这一行放在.htaccess
) :Environnement de production
Veuillez noter que les suggestions ci-dessus s'appliquent uniquement aux environnements de développement. Dans un environnement de production, cela doit être réglé sur :
Ensuite, vous pouvez voir toutes les erreurs dans le journal des erreurs. Voir Où trouver les journaux d'erreurs PHP
Appel AJAX
Pour les appels AJAX, ouvrez DevTools (F12) sur le serveur de développement et sélectionnez l'onglet Réseau. Faites ensuite la demande dont vous souhaitez voir les résultats et elle apparaîtra dans l'onglet Réseau. Cliquez dessus et sélectionnez l'onglet Réponse. Là, vous verrez le résultat exact.
Sur le serveur de production, vérifiez simplement le journal des erreurs.