PHP require include

发布人:kimi  时间:2007-10-22 21:17  来源: 网络转载  查看: 791次   TAG: include  PHP  require 

PHP中require和include基本的区别,其实在一般PHP开发中require和include这2个函数的功能大致相同,但是有一些区别,请看下文讲解。


第一点:require()  和  include()  除了怎样处理失败之外在各方面都完全一样。include()  产生一个警告而  require()  则导致一个致命错误。换句话说,如果你想在丢失文件时停止处理页面,那就用require()  吧,它直接会中止脚本。而include()  就不是这样,脚本会继续运行,但是会抛出一个Notice级别的错误。同时也要确认设置了合适的include_path。  


就是说再解析程序时即读取require的文件,而不是解析后,如果不能读取到被require的文件,就不能进行下一步动作。所以,不被正确包含就会导致程序的文件,用require比较好。


第二点:require()  无论如何都会包含文件,而  include()  可以有选择地包含:
<?php  
if(FALSE){  
   require('a.php');  
}  
if(FALSE){  
   include('b.php');  
}  
?>
  
比如上面这段代码,a.php一定会被包含,而b.php一定不会被包含。require类似于一次预扫描,在程序执行时,无论在函数里或是函数外,都将先把require的文件执行,且只执行一次。而include则是每执行一次就调用一次文件,即这次执行后,下次再执行执行到这里,仍将再执行一次。大家应该明白这个区别了吧:)


同时可以看下require_once和include_once的区别。
require_once() 语句在脚本执行期间包括并运行指定文件。此行为和 require() 语句类似,唯一区别是如果该文件中的代码已经被包括了,则不会再次包括。
include_once() 语句在脚本执行期间包括并运行指定文件。此行为和 include() 语句类似,唯一区别是如果该文件中的代码已经被包括了,则不会再次包括。如同此语句名字暗示的那样,只会包括一次。

相关阅读

本月热门