2. 对比 include 和 require
1) 分别用 include 和 require 引入一个存在的 php 文件
$a = 3;
2.php 的代码如下
$a +=1;*/
$a = 3;
include('./2.php');
//require('./2.php');
2) 再分别用引入一个不存在的 2-1.php 文件
$a = 3;
include('./2-1.php');
//include 被包含文件不存在时 , 代码会尽量往下执行 , 报警告错误 ,warning
require('./2-1.php');
//require 被包含文件不存在时 , 代码不会再往下执行 , 报致命错误 ,fatal error
echo $a;
什么时候用 include 和 require?
底层库等 , 很重要的文件 , 没有它不能继续执行 , 就用 require
如果是第三方的广告代码等 , 可以用 include
3. 加 _once 和不加 once 的区别
_once 作用 : 只引入 1 次 , 如果之前已引用过 , 不再重复引用 .
$a = 3;
include('./2.php');
include('./2.php');
include('./2.php');
include_once('./2.php');
include_once('./2.php');
include_once('./2.php');
//require_once('./2.php');
//require_once('./2.php');
//require_once('./2.php');
echo $a;
如果引入一些库文件 , 里面有很多函数 , 我们知道函数不能重复定义 ,
引入多次肯定会出问题
注意 : 不加 _once 速度快些 .
4. 被包含文件里可以像函数一样用 return
/*2.php 内容如下
return array('a','b','c');
*/
$arr = include('./2.php');
print_r($arr);
]]>Warning: include(): open_basedir restriction in effect. File(/www/wwwroot/xxx.com/api/index.php) is not within the allowed path(s): (/www/wwwroot/xxx.com/:/tmp/) in /www/wwwroot/xxx.com/index.php on line 17
Warning: include(/www/wwwroot/xxx.com/api/index.php): failed to open stream: Operation not permitted in /www/wwwroot/xxx.com/index.php on line 17
Warning: include(): Failed opening '/www/wwwroot/xxx.com/api/index.php' for inclusion (include_path='.:/www/server/php/56/lib/php') in /www/wwwroot/xxx.com/index.php on line 17
解决方法
把宝塔里的防跨站攻击关了就可以了!
]]>