require()语句的性能与include()相类似,两个的用途是完全一样的,不一定非得哪个放在最前面哪个放在中间。他们最根本的区别在于错误处理的方式不一样。
不同之处在于:
对include()语句来说,在执行文件时每次都要进行读取和评估;而对于require()来说,文件只处理一次(实际上,文件内容替换require()语句)。如果可能执行多次的代码,则使用require()效率比较高;如果每次执行代码时是读取不同的文件,或者有通过一组文件迭代的循环,就使用include()语句。
require("myfile.php")语句通常放在PHP脚本程序的最前面。PHP程序在执行前,就会先读入require()语句所引入的文件,使它变成PHP脚本文件的一部分。
include("myfile.php")语句一般是放在流程控制的处理区段中。PHP脚本文件在读到include()语句时,才将它包含的文件读取进来。这种方式,可以把程式执行时的流程简单化。
require在一开始就加载,一个文件存在错误的话,程序就会中断执行了,并显示致命错误
incluce在用到时才加载,一个文件存在错误的话,程序不会中端,而是继续执行,并显示一个警告错误。
_once后缀表示已加载的不加载
include()是有条件包含函数,而require()则是无条件包含函数。
如下面例子,如果变量$some为真,则包含文件a.php:
if ($come) {
include 'a.php';
}
下面例子中,无论$some是否为真,都将包含a.php:
if ($come) {
require 'a.php';
}