• 一个例子简要说明include和require的区别


    先编辑command.php文件

    echo 'hello'.PHP_EOL;
    

    然后编辑console.php文件

    for($i=1;$i<=3;++$i){
    	require 'command1.php';
    }
    

    原本想要包含并执行这个echo,没想到写错了文件名,如果是require,会报出这样的错误:

    Warning: require(command1.php): failed to open stream: No such file or directory in console.php on line 4
    
    Fatal error: require(): Failed opening required 'command1.php' (include_path='.') in console.php on line 4
    PHP Warning:  require(command1.php): failed to open stream: No such file or directory in console.php on line 4
    PHP Fatal error:  require(): Failed opening required 'command1.php' (include_path='.') in console.php on line 4
    

    如果把require改为include

    for($i=1;$i<=3;++$i){
    	include 'command1.php';
    }
    

    会报出这样的错误:

    Warning: include(command1.php): failed to open stream: No such file or directory in console.php on line 4
    
    Warning: include(): Failed opening 'command1.php' for inclusion (include_path='.') in console.php on line 4
    
    Warning: include(command1.php): failed to open stream: No such file or directory in console.php on line 4
    
    Warning: include(): Failed opening 'command1.php' for inclusion (include_path='.') in console.php on line 4
    
    Warning: include(command1.php): failed to open stream: No such file or directory in console.php on line 4
    
    Warning: include(): Failed opening 'command1.php' for inclusion (include_path='.') in console.php on line 4
    PHP Warning:  include(command1.php): failed to open stream: No such file or directory in console.php on line 4
    PHP Warning:  include(): Failed opening 'command1.php' for inclusion (include_path='.') in console.php on line 4
    PHP Warning:  include(command1.php): failed to open stream: No such file or directory in console.php on line 4
    PHP Warning:  include(): Failed opening 'command1.php' for inclusion (include_path='.') in console.php on line 4
    PHP Warning:  include(command1.php): failed to open stream: No such file or directory in console.php on line 4
    PHP Warning:  include(): Failed opening 'command1.php' for inclusion (include_path='.') in console.php on line 4
    

    如果使用require_once或者include_once,只要包含路径正确,那么循环只执行一次。

    总结:

    使用require,如果文件没有包含成功,就会报出一个fatal error,整个程序就中止了。

    使用include,如果文件没有包含成功,就会报出一个普通的warning,之后的代码仍会执行。

    如果你的Web程序使用了MVC这种对文件包含强依赖的设计方法,请使用require_once。

    本文为博主原创文章,转载请在明显位置注明出处: http://www.cnblogs.com/sweng

    本作品采用知识共享署名-非商业性使用-禁止演绎 3.0 未本地化版本许可协议进行许可。

  • 相关阅读:
    [转]win7 系统装SQLServer2000 成功。
    Windows CE 电源管理(转贴)
    [转]Win7系统下VS2005_2008不识别WinCE5 SDK
    [转]windows 7 下ASP.net 本地配置 ( IIS 7)
    [转]SelectObject() 装载字体 VC EVC
    Mobile Development: Disable Windows Mobile 6.5 Start and Close Button
    [转]WebForm 与 winform 路径获取
    1. chromedriver的下载和配置
    Slf4j打印异常的堆栈信息
    写个日志请求切面,前后端甩锅更方便
  • 原文地址:https://www.cnblogs.com/sweng/p/6749496.html
Copyright © 2020-2023  润新知