Quand une panne de programme PHP , il arrête l'exécution au milieu du traitement en raison d'une erreur inattendue. Accidents PHP peuvent être graves , car ils peuvent laisser des données partiellement traitées ou mises à jour et brusquement fermer les fichiers ouverts lorsque l'incident se produit . La cause d'un accident PHP peut être une erreur dans le script PHP ou peut-être à cause de mauvaises données, plutôt que d'une erreur de programmation. Il ya plusieurs choses que vous pouvez faire lorsque PHP se plante à identifier la cause de l'accident . Ensuite, vous pouvez soit fixer script PHP incorrect ou inclure un script supplémentaire qui anticipe et les erreurs de pièges causés par les mauvaises données . Instructions
1
examen du fichier de log du serveur web . Localisez le fichier , ce qui sous Apache se trouve généralement dans /var/log/apache2/error.log . Afficher la partie la plus récente du journal d'erreur à l'écran en tapant:
queue /var/log/apache2/error.log
2
Examiner les messages d'erreur dans le fichier journal . Ouvrez le script PHP dans un éditeur et examiner le code qui correspond au numéro de la ligne citée dans le message d'erreur. Recherchez les erreurs de logique qui pourrait avoir causé l'accident se produise. Examiner au moins 10 lignes au-dessus et en dessous du numéro de la ligne citée dans l'erreur , puisque l'interprète pourrait signaler une erreur sur une ligne différente de la ligne où il est effectivement contenue.
3
Turn le rapport d'erreur de retour sur afin que vous puissiez interactive déboguer le script sans avoir à consulter le fichier journal après chaque étape. Utilisez un éditeur pour modifier le script PHP. Commenter une ligne qui contient l'instruction " error_reporting " et ajouter une nouvelle ligne en dessous avec la déclaration suivante:
error_reporting ( E_ALL ) ;
4
Insérer le code de débogage dans l' script PHP afin que vous puissiez plus facilement traquer les erreurs qui sont causées par des données incorrectes ou inattendues. Créer une fonction pour écrire des messages de débogage à l'écran et créer une variable booléenne qui vous permet de transformer globalement les rapports d'erreurs sur et en dehors . Insérez déclarations contenues dans le code PHP débogage. Par exemple, ajoutez le code suivant au script PHP:
$ debug = true; fonction debug ( $ msg ) { global $ debug ; si le retour ; echo
" * ($ debug !) ** $ msg ***
";}
insérer la fonction debug autour d'où l'erreur s'est produite . Par exemple, tapez :
debug ( "x = $ x et $ y = y après le traitement du premier élément de données ");
modifier la variable $ debug à false lorsque vous n'avez plus veulent écrire des messages de débogage à l'écran .
5
Utilisez " try /catch " déclarations ou « if-else » logique pour intercepter les erreurs qui pourraient être causés par des conditions inattendues telles que des données erronées . D'intercepter les erreurs qui peuvent causer un accident , même lorsque les données ne doivent jamais contenir les valeurs qui provoqueraient l'effondrement se produise . Par exemple, tapez la commande suivante pour éviter une " division par zéro " erreur même si un zéro n'est pas une valeur valide pour la variable :
$ moyenne = 0; if ($ count = 0 ! ) {$ moyenne = $ total /$ count ;}
6
solliciter l'aide d' autres développeurs qui pourraient ne pas être aussi familier avec le code. Parfois, la cause de l'erreur peut être une hypothèse que vous faites en raison de votre familiarité avec la façon dont le programme fonctionne . Après avoir trouvé la cause de l'accident, un remue-méninges avec d'autres développeurs sur d'autres accidents qui pourraient être causés par des erreurs de logique ou de conditions similaires de données. Revoir l'ensemble du script PHP et de fixer d'autres domaines du programme qui pourraient être vulnérables à des accidents similaires.