2010-04-15 6 views
0

J'ai rencontré un problème gênant en écrivant du code PHP4. J'ai renommé la méthode d'une classe mais j'ai oublié de la renommer d'où elle était appelée. La partie ennuyante est qu'il était difficile de localiser où le problème était parce qu'aucune erreur n'a été déclenchée. Le script a simplement abandonné en laissant la page Web partiellement rendue. Est-ce normal que cela ne déclenche pas d'erreur ou y a-t-il quelque chose de farfelu qui se passe ici? Si c'est normal, y a-t-il un moyen de forcer ce genre de chose à causer une erreur?PHP4 Pas d'erreur quand la méthode manquante est appelée

Répondre

0

Essayez de régler les error_reporting() en haut de votre script, comme ceci:

error_reporting(E_ALL); // report all errors 
+0

Je vais essayer. Actuellement, notre gestion des erreurs est configurée comme suit: error_reporting (0); // Désactive tous les rapports d'erreurs. $ old_error_handler = set_error_handler ("userErrorHandler"); fonction userErrorHandler (errno $, $ errmsg, $ filename, linenum de $, $ vars) { // code de gestion ici erreur personnalisée} Quel effet la mise en error_reporting (0) ont lorsque vous spécifiez immédiatement votre propre gestion des erreurs code juste après? Lorsque la méthode manquante est appelée, la fonction de gestion des erreurs personnalisées n'est pas appelée. –

+0

Merci qui a fonctionné. Je suis encore confus au sujet de l'effet qu'a le changement du niveau error_reporting() quand vous avez un gestionnaire d'erreur personnalisé et je me demande s'il est sûr d'activer le niveau E_ALL pour un serveur de production. –