<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <HTML ><HEAD ><TITLE >require</TITLE ><META NAME="GENERATOR" CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK REL="HOME" TITLE="PHP 手册" HREF="index.html"><LINK REL="UP" TITLE="控制结构" HREF="language.control-structures.html"><LINK REL="PREVIOUS" TITLE="return" HREF="function.return.html"><LINK REL="NEXT" TITLE="include" HREF="function.include.html"><META HTTP-EQUIV="Content-type" CONTENT="text/html; charset=UTF-8"></HEAD ><BODY CLASS="sect1" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#840084" ALINK="#0000FF" ><DIV CLASS="NAVHEADER" ><TABLE SUMMARY="Header navigation table" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TH COLSPAN="3" ALIGN="center" >PHP 手册</TH ></TR ><TR ><TD WIDTH="10%" ALIGN="left" VALIGN="bottom" ><A HREF="function.return.html" ACCESSKEY="P" >上一页</A ></TD ><TD WIDTH="80%" ALIGN="center" VALIGN="bottom" >章 16. 控制结构</TD ><TD WIDTH="10%" ALIGN="right" VALIGN="bottom" ><A HREF="function.include.html" ACCESSKEY="N" >下一页</A ></TD ></TR ></TABLE ><HR ALIGN="LEFT" WIDTH="100%"></DIV ><DIV CLASS="sect1" ><H1 CLASS="sect1" ><A NAME="function.require" ><A HREF="function.require.html" ><B CLASS="function" >require()</B ></A ></A ></H1 ><P > <A HREF="function.require.html" ><B CLASS="function" >require()</B ></A > 语句包含并运行指定文件。 </P ><P > <A HREF="function.require.html" ><B CLASS="function" >require()</B ></A > 语句包含并运行指定文件。有关包括如何工作的详细信息见 <A HREF="function.include.html" ><B CLASS="function" >include()</B ></A > 的文档。 </P ><P > <A HREF="function.require.html" ><B CLASS="function" >require()</B ></A > 和 <A HREF="function.include.html" ><B CLASS="function" >include()</B ></A > 除了怎样处理失败之外在各方面都完全一样。<A HREF="function.include.html" ><B CLASS="function" >include()</B ></A > 产生一个<A HREF="phpdevel-errors.html#internal.e-warning" >警告</A >而 <A HREF="function.require.html" ><B CLASS="function" >require()</B ></A > 则导致一个<A HREF="phpdevel-errors.html#internal.e-error" >致命错误</A >。换句话说,如果想在丢失文件时停止处理页面,那就别犹豫了,用 <A HREF="function.require.html" ><B CLASS="function" >require()</B ></A > 吧。<A HREF="function.include.html" ><B CLASS="function" >include()</B ></A > 就不是这样,脚本会继续运行。同时也要确认设置了合适的<A HREF="ini.core.html#ini.include-path" >include_path</A >。 </P ><P > <TABLE WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" CLASS="EXAMPLE" ><TR ><TD ><DIV CLASS="example" ><A NAME="AEN5058" ></A ><P ><B >例 16-4. 基本的 <A HREF="function.require.html" ><B CLASS="function" >require()</B ></A > 例子</B ></P ><TABLE BORDER="0" BGCOLOR="#E0E0E0" CELLPADDING="5" ><TR ><TD ><code><font color="#000000"> <font color="#0000BB"><?php<br /><br /></font><font color="#007700">require </font><font color="#DD0000">'prepend.php'</font><font color="#007700">;<br /><br />require </font><font color="#0000BB">$somefile</font><font color="#007700">;<br /><br />require (</font><font color="#DD0000">'somefile.txt'</font><font color="#007700">);<br /><br /></font><font color="#0000BB">?></font> </font> </code></TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE > </P ><P > 更多例子参见 <A HREF="function.include.html" ><B CLASS="function" >include()</B ></A > 文档。 </P ><DIV CLASS="note" ><BLOCKQUOTE CLASS="note" ><P ><B >注意: </B > 在 PHP 4.0.2 之前适用以下规则:<A HREF="function.require.html" ><B CLASS="function" >require()</B ></A > 总是会尝试读取目标文件,即使它所在的行根本就不会执行。条件语句不会影响 <A HREF="function.require.html" ><B CLASS="function" >require()</B ></A >。不过如果 <A HREF="function.require.html" ><B CLASS="function" >require()</B ></A > 所在的行没有执行,则目标文件中的代码也不会执行。同样,循环结构也不影响 <A HREF="function.require.html" ><B CLASS="function" >require()</B ></A > 的行为。尽管目标文件中包含的代码仍然是循环的主体,但 <A HREF="function.require.html" ><B CLASS="function" >require()</B ></A > 本身只会运行一次。 </P ></BLOCKQUOTE ></DIV ><DIV CLASS="note" ><BLOCKQUOTE CLASS="note" ><P ><B >注意: </B >由于这是一个语言结构而非函数,因此它无法被<A HREF="functions.variable-functions.html" >变量函数</A >调用。</P ></BLOCKQUOTE ></DIV ><DIV CLASS="warning" ><P ></P ><TABLE CLASS="warning" BORDER="1" WIDTH="100%" ><TR ><TD ALIGN="CENTER" ><B >警告</B ></TD ></TR ><TR ><TD ALIGN="LEFT" ><P >Windows 版本的 PHP 在 4.3.0 版之前不支持本函数的远程文件访问,即使 <A HREF="ref.filesystem.html#ini.allow-url-fopen" >allow_url_fopen</A > 选项已被激活。</P ></TD ></TR ></TABLE ></DIV ><P > 参见 <A HREF="function.include.html" ><B CLASS="function" >include()</B ></A >,<A HREF="function.require-once.html" ><B CLASS="function" >require_once()</B ></A >,<A HREF="function.include-once.html" ><B CLASS="function" >include_once()</B ></A >,<A HREF="function.get-included-files.html" ><B CLASS="function" >get_included_files()</B ></A >,<A HREF="function.eval.html" ><B CLASS="function" >eval()</B ></A >,<A HREF="function.file.html" ><B CLASS="function" >file()</B ></A >,<A HREF="function.readfile.html" ><B CLASS="function" >readfile()</B ></A >,<A HREF="function.virtual.html" ><B CLASS="function" >virtual()</B ></A > 和 <A HREF="ini.core.html#ini.include-path" >include_path</A >。 </P ></DIV ><DIV CLASS="NAVFOOTER" ><HR ALIGN="LEFT" WIDTH="100%"><TABLE SUMMARY="Footer navigation table" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" ><A HREF="function.return.html" ACCESSKEY="P" >上一页</A ></TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="index.html" ACCESSKEY="H" >起始页</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" ><A HREF="function.include.html" ACCESSKEY="N" >下一页</A ></TD ></TR ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" >return</TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="language.control-structures.html" ACCESSKEY="U" >上一级</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" ><A HREF="function.include.html" ><B CLASS="function" >include()</B ></A ></TD ></TR ></TABLE ></DIV ></BODY ></HTML >