Я ненавижу тот Google, не может искать символы. Я видел это в некотором примере кода и задался вопросом, почему существует знак перед функцией readfile:
@readfile($filename);
Что означает различный от без символ?
@
перед командой в PHP означает, что ошибки не выводятся. Он называется оператором контроля ошибок .
Если вы удалите @
и файл чтения
, возникнет ошибка (например, невозможность прочитать файл), тогда - в зависимости от настроек PHP - появится сообщение об ошибке быть среди содержания вашего сайта; то, чего вы редко хотите, если вообще хотите. (Еще хуже, если это произойдет до вызова header ()
или start_session ()
, потому что после отправки контента заголовки больше не могут быть записаны.)
Это оператор управления ошибками . Руководство расскажет вам все ...
Это оператор подавления ошибок PHP. С его помощью вы можете подавить сообщения об ошибках.
Совет:
Просто не используйте оператор подавления ошибок с кодом, критичным по скорости.
Будущее:
Поскольку оператор @
работает очень медленно, он не будет работать с ini_set
, например, @ini_set
в будущей версии PHP, например PHP6
Важная информация: