关于require,require_once,include和include_once的区别
一、定义
require,require_once,include,include_once都属于PHP的关键字,也就是说它们实际都是PHP的语句,而不是函数,类似于print,echo一样,也是PHP种的输出语句,而不是函数。但在更多的时候,大家都常称作函数。
二、用法
require 'test.php',require_once 'test.php',或者require('test.php'),require_once('test.php')这样的写法都是可以的,include也是如此。它们是用于在一个文件中需要引入另一个文件时所用。它们虽然可以带括号,但并非函数,我更喜欢用引号。
三、require和require_once的区别
require()在当前文件中引用时,可能会出现类或方法的多次引用或重复。而require_once()接收一个地址为参数,在当前文件中引用时,会先检查是否已经引用或出现过该引用文件中的类或方法,确保类或方法没被引用过。
四,include和include_once的区别
include与require,include_once和require_once作用一样。
五,include(include_once)和require(require_once)的区别
include和include_once在引用一个文件时,如果出现错误,会发出警告,并停止引用的文件的运行,然后继续运行当前文件,整体代码运行不会停止。
require和require_once在引用一个文件时,如果出现错误,会立即发出警告,然后停止整体代码运行。因此require和require_once想对会更安全。
六,优缺点
require_once需要运行时间更长点,所以效率也就相对更低点。如果考虑时间优先的话,require是更好的选择,但是在更多的时候,时间和效率是一种平衡关系。
七,用处
require和require_once一般用于包含类文件。include和include_once一般用于包含模板文件。
(有不确切的地方,欢迎指出)