@character перед вызовом функции

В чем разница между этими двумя вызовами функций в PHP?

init_get($somevariable);

@init_get($somevariable);

Ответ 1

"@" затмит любые ошибки php, которые может повысить ваша функция.

Ответ 3

Как уже было сказано, @ остановит ошибку (если есть). С точки зрения производительности это не рекомендуется.

Что делает php:

  • чтение состояния отображения ошибки
  • установка отображения ошибки для отображения ошибок
  • запуск вашей функции
  • установка отображения ошибки на предыдущее состояние

Если вы не хотите, чтобы какие-либо ошибки показывали использование error_reporting(0);.

Или просто напишите бесплатный код: P

Ответ 5

Как говорили все, он останавливает вывод ошибок для этой конкретной функции. Однако это значительно снижает производительность, так как она должна дважды изменять настройку отображения ошибки. Я бы рекомендовал НЕ игнорировать предупреждения или ошибки и исправлять код.