Avatar ·

À 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