SommaireTelecharger la documentationChapitre suivantChapitre precedent  

 
Raccourci :  
Les opérateurs

Les opérateurs arithmétiques
Les opérateurs d'assignation
Opérateurs sur les bits
Opérateurs de comparaison
Opérateur de contrôle d'erreur
Opérateur d'exécutions
Opérateurs d'incrémentation/Décrémentation
Les opérateurs logiques
La précédence des opérateurs
Opérateurs de chaînes

7.7.5 Opérateur de contrôle d'erreur
[Notes en ligne] 

PHP supporte un opérateur de contrôle d'erreur : c'est @. Lorsque cet opérateur est ajouté en préfixe d'une expression PHP, les messages d'erreur qui peuvent être générés par cette expression seront ignorés.
Si l'option track_errors est activée, les messages d'erreurs générés par une expression seront sauvés dans la variable globale $php_errormsg. Cette variable sera écrasée à chaque erreur. Il faut alors la surveiller souvent pour pouvoir l'utiliser.

<?php
/* Erreur intentionnelle (le fichier n'existe pas): */
  $my_file = @file ('non_persistent_file') or
    die ("Impossible d'ouvrir le fichier : L'erreur est : '$php_errormsg'");
// Cela fonctionne avec n'importe quelle expression, pas seulement les fonctions
  $value = @$cache[$key];
// la ligne ci-dessus n'affichera pas d'alerte si la clé $key du tableau n'existe pas
?>
     



Note : L'opérateur @ ne fonctionne qu'avec les expressions. La règle générale de fonctionnement est la suivante : si vous pouvez prendre la valeur de quelquechose, vous pouvez le préfixer avec @. Par exemple, vous pouvez ajouter @ aux variables, fonctions, à include(), aux constantes, etc... Vous ne pourrez pas le faire avec des éléments de langage tels que les classes, if et foreach, etc...

Note : La plupart des fonctions d'accès aux bases de données ne retournent pas d'erreur PHP. Il faut y accéder avec une fonction du type base_de_donnees_get_error().
Voir aussi error_reporting().


Chapitre précédentChapitre suivantAccueil nexen.net