文件的包含:
Include / include_once
Require /require_once
Include 和require都是把一个页面引入到当前页面.
俩个都是文件的引入,那怎么来理解”引入”呢?
Include与require的理解
俩个都是把被包含文件的所有代码引入,替换include/require那一句.
和直接把代码写在include那一句是一样的.Require作用也是把一个文件引入到当前文件.
理解与include一样.
Include与require的区别
答:include如果引入的文件不存在,试图继续往下执行,报一个warning
(如果你不介意之前的内容是否被包含,之后的内容都要执行,就使用include)
而require如果引入的文件不存在,报fatal error,不再继续执行.
(如果之前的内容一定要被包含,才允许继续执行之后的代码,就使用require)
========================================================
Include/require 与 include_once /require_once的区别
_once 会自动判断文件是否已经引入,如果引入,不再重复执行.
即:保证被包含文件只可能被引入一次.
(如果包含的文件里有定义函数,那么被包含的文件只能被包含一次,如果多次包含,就会出现函数重定义的错误,PHP是不运行函数重定义的,会出现致命错误,之后代码不在运行)
=======================================================
有的文件不允许被包含多次?
可以用_once来控制,
但是,如果从文件的设计上,比较规范,能保证肯定不会出现多次包含的错误,
这种情况下 建议用include
因为include_once要检测之前有没有包含,效率没有include高
本文章转载于:http://www.libazh.com/?p=148