include与require的区别
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++; }