À quoi sert le symbole @ (arobase) en PHP et comment fonctionne la suppression des erreurs ?
Bonjour à tous ! Je viens de commencer à apprendre PHP et je vois souvent dans le code des autres un symbole étrange @ devant les fonctions. Par exemple :
```php
$file = @fopen('config.php', 'r');
$data = @file_get_contents('http://api.example.com');
@$result = someFunction();
```
Je comprends que cela a un rapport avec les erreurs, mais je ne maîtrise pas complètement le sujet. Quand j'écris du code sans @, lors de l'accès à un fichier inexistant ou en cas de problèmes réseau, des avertissements (warnings) et des erreurs fatales apparaissent. Avec @, les erreurs disparaissent. Mais ce n'est pas une bonne solution, n'est-ce pas ?
J'ai plusieurs questions :
1. Comment fonctionne exactement l'opérateur @ ? Supprime-t-il toutes les erreurs ou seulement certains types ?
2. Pourquoi de nombreux développeurs expérimentés critiquent-ils @ et conseillent-ils de ne pas l'utiliser ?
3. Existe-t-il des alternatives normales pour gérer les erreurs sans les supprimer ?
Donnez, s'il vous plaît, des exemples où @ est vraiment nécessaire, et quand c'est une mauvaise pratique. Merci d'avance !
<<>>
Comment fonctionne l'opérateur @ en PHP
No answers yet.
Connectez-vous pour laisser une réponse