Вы находитесь на странице: 1из 1

Лекции курса PHP7 + MySQL с нуля

(краткое содержание)

ЛЕКЦИЯ 12. ОПЕРАЦИЯ ОТКЛЮЧЕНИЯ ПРЕДУПРЕЖДЕНИЙ

Интерпретатор PHP устроен таким образом, что при появлении ошибки не


бросает разработчика в одиночку разбираться с проблемой, а помогает в ее
решении. Так, при появлении ошибки или предупреждения, они анализируются и
определяются к одному из 4-х уровней «серьезности». Далее, интерпретатор
выводит на экран сообщение, в котором объявляет о типе ошибки и ее
местонахождении в коде программы. Так становится существенно легче ее
обнаружить и исправить.
При желании, разработчик может настроить параметры PHP таким образом,
чтобы он не выдавал сообщения о тех или иных ошибках, попросту игнорируя их,
хотя этого и не рекомендуется делать. Более того, настоятельно рекомендуется
выставлять уровень контроля ошибок на максимальный, так как это сильно
облегчает работу с поиском даже самых мелких ошибок, влекущих, порой, за собой
большие неприятности.
Но, бывают ситуации, когда при текущей проверке работоспособности
программы, в ней отсутствует, например, какой-то скрипт, содержащий
необходимую для безошибочной работы, информацию: переменные, функции и т.п.
При этом Вам, как разработчику нет нужды проверять работоспособность всей
программы, а надо проверить какой-то отдельный участок кода.
Для этих случаев существует операция отключения предупреждений.
Рассмотрим пример:
Листинг 12.1. Код программы, который при выводе сообщит об
ошибке.

include_once “variables.php”;
echo “Вывод на экран результата сложения переменных: ”.$var1 + $var2;

Представим, что Вы только настроили локальный сервер и просто хотите


проверить, все ли в порядке с работой простых скриптов и выводом текста в нужном
формате. При этом скрипт variables.php Вы еще не писали, либо не подключили к
проекту.
В результате Вы получите сообщение об ошибке, которое сообщит, что
переменных не существует.
Но цель то была другая!
Решить эту проблему можно, используя оператор @, который отключает
любые сообщения об ошибках в коде программы при передаче ее интерпретатору.
Переписав код следующим образом:
Листинг 12.2. Код программы с отключенными ошибками.

@include_once “variables.php”;
echo “Вывод на экран результата сложения переменных: ”.@($var1 + $var2);

В итоге на экран будет выведено сообщение: «Вывод на экран результата


сложения переменных:».
Стоит отметить, что данный оператор является быстрым решением в
экстренных случаях, потому настоятельно не рекомендуется оставлять его в
окончательном варианте кода. Злоупотребление данным оператором может
привести к проблемам в отладке кода и его модификации.