LINUX.ORG.RU

История изменений

Исправление kostik87, (текущая версия) :

А ты в школе, институте, вообще в процессе работы не программировал / скрипты не писал?

В большинстве языков программирования присутствует обязательное предварительное объявление выше того к чему обращаешься ниже по коду, это касается не только функций / процедур, но иногда и переменных.

В строго типизированных языках переменные должны быть в начале объявлены с соответствующим типом, потом использованы.

Реализация функции должна быть описана выше её вызова, исключение может быть в виде необходимости выше вызова описать только объявление функции, с именем, типом передаваемых параметров, типом возвращаемого значения. Далее можно использовать её в вызовах, а реализация может быть описана ниже или вообще в другом подключаемом файле. А выше должны быть Include.

Конфиг nginx, apache или другого сервиса, который позволяет делать include это по сути описание конфигурации его работы с кучей секций и в процессе чтения блоков конфигурации они анализируются и интерпретируются построчно.

Поэтому важно в каком порядке подключаются и описаны соответствующие блоки.

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

В случае декларирования простых переменных это ещё бы прошло до тех пор, пока ты в одной переменной не обратился к значение не объявленной.

Исходная версия kostik87, :

А ты в школе, институте, вообще в процессе работы не программировал / скрипты не писал?

В большинстве языков программирования присутствует обязательное предварительное объявление выше того к чему обращаешься ниже по коду, это касается не только функций / процедур, но иногда и переменных.

В строго типизированных языках переменные должны быть в начале объявлены с соответствующим типом, потом использованы.

Реализация функции должна быть описана выше её вызова, исключение может быть в виде необходимости выше вызова описать только объявление функции, с именем, типом передаваемых параметров, типом возвращаемого значение. Далее можно использовать её в вызовах, а реализация может быть описана ниже или вообще в другом подключаемом файле. А выше должны быть Include.

Конфиг nginx, apache или другого сервиса, который позволяет делать include это по сути описание конфигурации его работа и в процессе чтения блоков конфигурации они анализируются и интерпретируются построчно.

Поэтому важно в каком порядке подключаются и описаны соответствующие блоки.

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

В случае декларирования простых переменных это ещё бы прошло до тех пор, пока ты в одной переменной не обратился к значение не объявленной.