PHP文件引用
PHP文件引用
四种方式
- require
- include
- require_once
- include_once
require与include
使用方式
require 'myfile.php';
include 'myfile.php';
也可以使用调用函数的写法:
require('myfile.php');
include('myfile.php');
由于这四个语句在PHP中并不是函数,而是语句(statement),因此此处使用括号就如同
$var = (1+2);
这样一句代码一样,没有什么太大的意义,因此在写代码的时候,建议使用前一种,有助于区别一般函数。
区别
require与include除了产生的错误级别不同,其他方面几乎完全一样。(PHP手册)
使用require引用文件失败时,将会产生一个E_COMPILE_ERROR级别的错误,PHP脚本会中止运行,而使用include引用文件失败时,将产生一个E_WARNING级别的警告,PHP脚本仍然会继续运行。
一般来说,
如果一个文件是必须的,使用require。
如果一个文件不是必须的,使用include,如果不想输出警告,可以用@符号忽略警告。
require_once与include_once
与require有何区别
使用require_once时,在引用这个文件前,会检查之前是否有被引用过,如果有,将不再引用。
同样的include与include_once的区别也是这样。
和前面两者一样,require_once与include_once的区别也是错误级别不同。
何时使用_once
PHP中不允许重复定义相同的函数,如果被引用文件中定义了函数,重复引用会产生错误。此时如果担心重复引用,就可以使用_once。
总结
require与include、require_once与include_once的主要区别在于失败时产生的错误级别不同。
require与require_once、include与include_once的主要区别在于_once会在引用前检查是否引用,避免重复引用。
如果一个文件是必须的,使用require,如果担心产生重复引用错误,使用require_once。
如果一个文件不是必须的,使用include,如果担心产生重复引用错误,使用include_once。如果不想输出警告,可以用@符号忽略警告。