Forum Webscript.Ru

Программирование => PHP => Тема начата: Enemy от 16 Ноября 2001, 13:33:07

Название: в чем отличие
Отправлено: Enemy от 16 Ноября 2001, 13:33:07
Чем отличаются функции include и require? И что лучше?
Название: в чем отличие
Отправлено: AliMamed от 16 Ноября 2001, 13:45:39
эээ основные отличия такие

файл указанный в require будет прочитан даже если строка где эта команда не выполняется.
т.е.

$v=1;
if( $v <> 1 ){
 include("1.php");
 require("2.php");
}

файл 1 не будет прочитан, файл 2 - будет прочитан, хотя код, который в нем не будет выполнен.

кроме того, в отличие от include(), нельзя с помощью require() подцепить несколько раз один и тот же файл
Название: Чтобы било понятнее
Отправлено: Igor Dyrda от 16 Ноября 2001, 13:55:15
Оператор REQUIRE заменяет себя содержимым указанного файла, похоже на то, как в препроцессоре C работает #include.
Это означает, что вы не можете поместить require() внутрь цикла и ожидать, что он включит содержимое дугого файла несколько раз в процессе каждой итерации. Оператор INCLUDE вставляет и выполняет содержимое указанного файла. Это случается каждый раз, когда встречается оператор INCLUDE, так что вы можете включить этот оператор внутрь цикла, чтобы включить несколько файлов :
     
include() отличается от require() тем, что оператор include выполняется каждый раз при его встрече, а require() заменяется на содержимое указанного файла безотносительно будет ли выполнено его содержимое или нет.