原文链接:http://www.w3school.com.cn/php/php_includes.asp
?
服务器端包含 (SSI) 用于创建可在多个页面重复使用的函数、页眉、页脚或元素。
PHP include 和 require 语句
?
在 PHP 中,您能够在服务器执行 PHP 文件之前把该文件插入另一个 PHP 文件中。
include 和 require 语句用于在执行流中向其他文件插入有用的的代码。
include 和 require 很相似,除了在错误处理方面的差异:
- require 会产生致命错误 (E_COMPILE_ERROR),并停止脚本
- include 只会产生警告 (E_WARNING),脚本将继续
因此,如果您希望继续执行,并向用户输出结果,即使包含文件已丢失,那么请使用 include。否则,在框架、CMS 或者复杂的 PHP 应用程序编程中,请始终使用 require 向执行流引用关键文件。这有助于提高应用程序的安全性和完整性,在某个关键文件意外丢失的情况下。
包含文件省去了大量的工作。这意味着您可以为所有页面创建标准页头、页脚或者菜单文件。然后,在页头需要更新时,您只需更新这个页头包含文件即可。
语法
include '<em style="margin: 0px; border: 0px; padding: 0px;">filename</em>';
或者
require '<em style="margin: 0px; border: 0px; padding: 0px;">filename</em>';
PHP include 和 require 语句
基础实例
假设您有一个标准的页头文件,名为 "header.php"。如需在页面中引用这个页头文件,请使用 include/require:
<code style="margin: 0px; font-family: 'Courier New', Courier, monospace; color: #0000dd; border: 0px; padding: 0px;"><?php include 'header.php'; ?></code> <h1>Welcome to my home page!</h1> <p>Some text.</p>
例子 2
假设我们有一个在所有页面中使用的标准菜单文件:
"menu.php": echo '<a href="/default.php">Home</a> <a href="/tutorials.php">Tutorials</a> <a href="/references.php">References</a> <a href="/examples.php">Examples</a> <a href="/about.php">About Us</a> <a href="/contact.php">Contact Us</a>';
网站中的所有页面均应引用该菜单文件。这是具体的做法:
<div class="leftmenu"> <code style="margin: 0px; font-family: 'Courier New', Courier, monospace; color: #0000dd; border: 0px; padding: 0px;"><?php include 'menu.php'; ?></code> </div> <h1>Welcome to my home page.</h1> <p>Some text.</p>
例子 3
假设我们有一个定义变量的包含文件 ("vars.php"):
<?php $color='red'; $car='BMW'; ?>
这些变量可用在调用文件中:
<h1>Welcome to my home page.</h1> <code style="margin: 0px; font-family: 'Courier New', Courier, monospace; color: #0000dd; border: 0px; padding: 0px;">php include 'vars.php';</code> echo "I have a $color $car"; // I have a red BMW ?>
?
补充:除了include、require之外,还有两个类似包含 include_once 和 require_once,带有once后缀的两个函数会自动检测所包含文件是否已被包含,可以用来预防重复包含(重复包含同一文件会出错),然而,也正是因为其自动检测是否重复包含,会损失一定的性能。