Include和Require的一些测试

config.php代码如下:
<?php 
    return [
        'url'=>'127.0.0.1',
        'port'=>3306,
    ];

 ?>

index.php代码如下:
<?php 

    var_dump(require_once 'config.php'); //['url'=>'127.0.0.1','port'=>3306];
    var_dump(include_once 'config.php'); //true
    var_dump(include_once 'config.php'); //true
    var_dump(include 'config.php');//['url'=>'127.0.0.1','port'=>3306];
    var_dump(include 'config.php');//['url'=>'127.0.0.1','port'=>3306];
    var_dump(require 'config.php');//['url'=>'127.0.0.1','port'=>3306];

    var_dump(include 'nofile.php');//false(warning)
    var_dump(include_once 'nofile.php');//false(warning)
    var_dump(require_once 'nofile.php');//fetal error
    var_dump(require 'nofile.php');//fetal error

 ?>

浅显的结论:require和include,require_once和include_once作用相似,主要区别在于报错级别不一样。

  • 在文件找不到的情况下require和require_once都会报致命错误而include和include_once都会报警告,值为false;
  • 在文件可以找到的情况下,include和require将正常包含文件或者返回应有的数据,当欲包含的文件已经被包含的时候,再次使用include_once或require_once时,返回值为true
0

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据