4.6 Les opérateurs
4 Référence
Manuel PHP
. La précédence des 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 . Opérateurs de chaînes . Opérateurs de tableaux
|
4.6.6 Opérateur de contrôle d'erreur
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 quelque chose, 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
.
|