La classe de base PEAR fournit les fonctionnalités qui sont utilisées par la plus part des classes PEAR. Normalement, vous n'avez pas à utiliser cette classe directement : il vous suffit d'en hériter.
Les fonctionnalités marquantes sont :
Fonction de fin de requête
Gestion des erreurs
Si vous faîtes hériter de la classe PEAR, une classe appelée NomClasse, vous pouvez définir une méthode appelée _ClassName (le nom de la classe précédé d'un souligné), qui sera appelée lorsque le script prend fin. Ce n'est pas un destructeur, car vous pouvez détruire un objet avec cette méthode, mais le destructeur sera quand même appelé. C'est une fonction de callback, qui intervient lorsque le script prend fin. Voyez l'exemple.
La classe de base PEAR fournit aussi un moyen de manipuler des erreurs plus complexes qu'un simple booléen ou entier. Une erreur PEAR est un objet qui est une instance de la classe PEAR_Error, ou d'une de ses sous-classes.
Une des éxigences de conception des erreurs PEAR est qu'il ne faut pas forcer l'affichage d'erreurs, mais plutôt de fournir les outils pour les afficher, tout en laissant à l'utilisateur le choix de les utiliser. Cela permet de traiter correctement les erreurs, notamment si le format de sortie n'est pas HTML (par exemple WML ou XML).
L'objet d'erreur peut être configuré de nombreuses façons dès sa création : affichage d'erreur, affichage d'erreur suivi de la fin du script, envoie d'une erreur PHP avec trigger_error(), appeler une fonction de traitement, ou rien du tout. Vous pouvez typiquement spécifier ces parmètres dès le constructeur de PEAR_Error : tous ces paramètres sont optionnel, et PEAR fournit un moyen de gérer des valeurs par défaut. Voyez les exemples d'erreurs PEAR, pour avoir une illustration, et la documentation de PEAR_Error pour plus de détails.
Les exemples ci-dessus montre comment utiliser les simili destructeurs, pour implémenter une classe qui gère le contenu d'un fichier, ajoute des données, et sauve le tout à la fin du script.
Note : Les simili destructeurs de PEAR utilisent les fonctions de fin de script de PHP (register_shutdown_function()), et vous ne pourrez rien afficher dans ces fonctions, si vous utilisez un serveur web. En ligne de commande, toutefois, l'affichage se fera. C'est comme ca.
L'exemple suivant montre différentes façons d'utiliser le mécanisme d'erreur de PHP.
Exemple 2. Exemple d'erreurs PEAR(1)
|
Cet exemple illustre une fonction de fsockopen() qui retourne le code d'erreur et, au cas échéant, le message retourné par le serveur. Notez que pear->iserror() sert à savoir si une valeur est une erreur PEAR.
Le mode opératoire de PEAR_Error dans cet exemple est de simplement retourner l'objet d'erreur, et laisser le reste au développeur. C'est le mode par défaut.
Dans le prochain exemple, on utilise d'autres modes :
Exemple 3. Exemple d'erreurs PEAR(2)
|
Ici, le mode par défaut est PEAR_ERROR_DIE, et comme on ne spécifie aucun mode d'erreur dans l'appel à (ce devrait être le troisième argument), raiseError utilise le mode par défaut, et termine le script si fsockopen() échoue.
Précédent | Sommaire | Suivant |
Manuel de référence PEAR | Niveau supérieur | PEAR_Error |