场景:
1、require:包含多次
2、include:包含多次
3、require_once: 包含一次
4、include_once: 包含一次
小结:
1、require遇到错误抛出error类别的错误,停止执行
2、include遇到错误抛出warning类型的错误,继续执行
3、require_once、include_once只能包含一次
4、HTML类型的包含页面中存在PHP代码,如果包含到PHP中是可以被执行的
5、包含文件相当于把包含文件中的代码拷贝到主文件中执行,魔术常量除外,魔术常量获取的是所在文件的信息。
6、包含在编译时不执行、运行时加载到内存、独立编译包含文件
./ 当前目录
../ 上一级目录
区分如下包含:
require './head.html'; //在当前目录下查找
require 'head.html'; //受include_path配置影响
include_path的使用场景:
如果包含文件的目录结构比较复杂,比如:在c:\aa\bb\cc\dd中有多个文件需要包含,可以将包含的路径设置成include_path,这样包含就只要写文件名就可以了
<?php
set_include_path('c:\aa\bb\cc\dd'); //设置include_path
require 'head1.html'; //受include_path配置影响
require 'head2.html';
include_path可以设置多个,路径之间用分号隔开
set_include_path('c:\aa\bb\cc\dd;d:\\');
多学一招:
正斜(/) web中目录分隔用正斜 http://www.sina.com/index.php
反斜(\)物理地址的分隔用反斜,(windows中物理地址正斜和反斜都可以) c:\web1\aa