1, require在程序解釋執行前被加載,被加載的內容,在程序解釋執行過程中被經常使用;include則是在解釋執行過程中,需要使用某些內容使用,include加載;由此可見,某些內容經常使用,可以使用require;如果每次執行代碼是讀取不同的文件,或者有通過一組文件迭代的循環,就使用include。
2,include引入文件失敗時候,警告,程序繼續執行;require引入文件出錯時候,錯誤,停止執行。
3,include_once和require_once與include和require類似,不過它們引入的文件只能被引用一次。
4,include與file_get_contents類似,但是include返回字符串可以被執行,file_get_contents得到字符串不會被執行。
實例
(1)include有條件引用;require是無條件引用。
if($some){ include 'somefile.php'; }
如上代碼。如果變量$somg為真,則將包含文件somefile.php。
if($something){ require 'somefile.php'; }
如上代碼,但無論$some取何值,下面的代碼將把文件somefile.php包含進文件里。
(2) 迭代過程中引用不同文件時候
$i = 1; while ($i < 3) { require "somefile".$i.".php"; $i++; }
可以從以上這段代碼中看出,每一次循環的時候,程序都將把同一個文件somefile1.php包含進去,很顯然這不是我們想要的,可以看出這段代碼希望在每次循環時,將不同的文件包含進來,如果要完成這個功能,只能使用include。
$i = 1; while ($i < 3) { include "somefile.$i.php"; $i++; }