1.include()和require()是语言结构不是真正的函数,像echo,可以echo("abc")当然也可以echo "abc",include和require也亦然
2.require_once()和include_once()对文件只包含一次
3.加载失败的处理方式不同: include()会产生一个警告,而 require()则导致一个致命的错误(出现错误,脚本停 止执行) require() :如果碰到错误,会报出一个 fatal error.脚本停止执行 include() : 如果碰到错误,会给出一个 warning,但脚本会继续执行 这里特别要注意的是:使用 include()文件中有语法错误时,脚本继续执行,这种情况 只出现在 PHP 4.3.5 之前。
4.因为 require 语句相当于将另一个源文件的内容完全复制到本文件中,所以一般将其放在源文件的起 始位置,用于引用需要使用的公共函数文件和公共类文件等,像 C 语言的预处理程序#include 一样都是写在文件头位置,引入外部文件。
Include 一般是放在流程控制的处理部分中。 PHP 程序网页在读到 include 的文件时,才将它读进来。
这种方式,可以把程序执行时的流程简单化
5.如果 require()所在位置的语句不被执行,require()所包含的文件中的语句也不会被
执行。(但是 require 语句已经执行了,文件已经包含进来。而 include 所在位置不被
执行,则不执行 include 语句)
6.include有返回值而require没有(可能因为require速度比include快),因此进而导致include可以用在循环,而require没返回值在循环条件中无法判断