наверх

Инструкции goto, require, require_once, include, include_once

Инструкция goto используется для перехода в другую часть программы. Место, куда необходимо перейти указывается с помощью метки, за которой ставится двоеточие, после оператора goto указывается желаемая метка для перехода. Его синтаксис выглядит следующим образом:

Рассмотрим пример организации цикла при помощи двух операторов goto:

Доходя до инструкции goto begin, интерпретатор перемещается к метке begin,таким образом достигая зацикливания программы. Для выхода из программы используется условие, при срабатывании которого выполняется инструкция goto finish, которая сообщает о необходимости перейти к метке finish.

Оператор goto имеет свои ограничения. Целевая метка должна находиться в том же файле и в том же контексте, вы не можете переходить за границы функции или метода, а так же не можете перейти внутрь одной из них. Также нельзя перейти внутрь любого цикла или оператора switch. Но его можно использовать для выхода из этих конструкций (из циклов и оператора switch).

Инструкции require и include

Обе инструкции позволяют включать файлы в сценарий PHP. Таким образом удобно разбивать текст программы на несколько частей. Их синтаксис таков:

При запуске программы интерпретатор заменит инструкцию на содержимое подключаемого файла. Это бывает удобно для подключения частей шаблона или объемных функций.

Данные инструкции практически идентичны, но существуют между ними и некоторые различия. Файлы, подключенные через require подключает файлы на начале этапа выполнения, а include во время интерпретации. И если include подключает не существующий файл, и условие не выполнилось, то файл не будет подключен, но работа программы продолжиться. Ошибка в require остановит выполнение программы, показав ошибку.

Инструкции require_once и include_once

Инструкции require_once и include_once работают точно так же, как require и include. Однако перед включением файла интерпретатор проверяет, включался ли уже этот файл или нет. Если файл был подключен ранее, то он не будет подключен повторно. Операторы имеют следующий формат:

Применять операторы require_once и include_once удобно при разработке больших проектов, так как в одном из файлов включаемый файл, возможно, уже был подключен.