if($something){include(somefile);}
复制代码
但不管$something取何值,下面的代码将把文件somefile包含进文件里:
if($something){require(somefile);}
复制代码
下面的这个有趣的例子充分说明了这两个函数之间的不同。
$i = 1;while ($i require(somefile.$i);$i++;}
复制代码
在这段代码中,每一次循环时,程序都将把同一个文件包含进去。很显然这不是程序员的初衷,从代码中我们可以看出这段代码希望在每次循环时,将不同的文件包含进来。如果要完成这个功能,必须求助函数include():
$i = 1;while ($i include(somefile.$i);$i++;}
复制代码
3,报错方式例子,写两个php文件,名字为test1.php 和test2.php,注意相同的目录中,不要存在一个名字是test999.php的文件。test.php
复制代码
test2.php
复制代码
浏览第一个文件,因为没有找到test999.php文件,我们看到了报错信息,同时,报错信息的下边显示了abc,你看到的可能是类似下边的情况:warning: include(test1aaa.php) [function.include]: failed to open stream: no such file or directory in d:\website\test.php on line 2warning: include() [function.include]: failed opening ‘test1aaa.php’ for inclusion (include_path=’.;c:\php5\pear’) in d:\website\test.php on line 2abc
浏览第二个文件,因为没有找到test999.php文件,我们看到了报错信息,但是,报错信息的下边没有显示abc,你看到的可能是类似下边的情况:warning: require(test1aaa.php) [function.require]: failed to open stream: no such file or directory in d:\website\test.php on line 2fatal error: require() [function.require]: failed opening required ‘test1aaa.php’ (include_path=’.;c:\php5\pear’) in d:\website\test.php on line 2
小结:include和require的区别:include引入文件时,如果碰到错误,会给出提示,并继续运行下边的代码。require引入文件时,如果碰到错误,会给出提示,并停止运行下边的代码。