require()Фунция require() замещает себя указанным файлом, она
работает подобно оператру
#include в языке C.
Если в PHP включено "URL fopen wrappers" (так
установлено по умолчанию), вы можете
указывать URL файла вместо локального адреса.
Важное примечание относительно того, как
это работает - это то, что когда файл включен
с помощью функций include() или require(), то в начале подключаемого файла парсер
переходит из режима PHP в HTML и возвращается
обратно только в конце подключаемого файла.
Поэтому любой код в подключаемом файле,
который должен быть выполнен PHP, необходимо
заключить в теги кода PHP (<? и ?>).
require() в действительности не является функцией PHP,
скорее, это конструкция языка. Это
объясняет некоторые отличия в правилах от
функций. Например, require() не подчинена каким-либо структурам
управления. Во-вторых, эта функция не
возвращает никаких значений, попытка
прочитать значение require() приведет к ошибке.
В отличие от функции include(), require() всегда будет читать значение
подключаемого файла, даже если строка, на
которой она находится, никогда не
выполняется. Если вы хотите подключать файл
при определенном условии, используйте include(). Применение условий не работает с функцией require().
Точно так же require() невозможно использовать в циклах, потому
что require() вызывает файл только один раз. Для эти
целей используйте функцию include().
Когда файл подключается с помощью функции require(), то содержащийся код унаследует ту среду, в
которой он вызывался. Любые переменные,
действующие внутри вызываемого файла будут
действовать и в самом файле. Если require() вызывается внутри функции, то весь код
вызываемого файла будет вести себя так же,
как если бы он был определен внутри этой
функции.
/* This example assumes that someserver is configured to parse .php
* files and not .txt files. Also, 'works' here means that the
* variables $varone and $vartwo are available within
* the require()ed file. */
/* Won't work; file.txt wasn't handled by someserver. */
require ("http://someserver/file.txt?varone=1&vartwo=2");
/* Won't work; looks for a file named 'file.php?varone=1&vartwo=2'
* on the local filesystem. */
require ("file.php?varone=1&vartwo=2");
/* Works. */
require ("http://someserver/file.php?varone=1&vartwo=2");
$varone = 1;
$vartwo = 2;
require ("file.txt"); /* Works. */
require ("file.php"); /* Works. */ |
<-Назад
Список всех функций Если вы заметили ошибку, неточность, либо хотите опубликовть свой перевод неуказанных в разделе функций, пожалуйста, напишите по этому адресу.
|