<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <HTML ><HEAD ><TITLE >return</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="declare" HREF="control-structures.declare.html"><LINK REL="NEXT" TITLE="require" HREF="function.require.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="control-structures.declare.html" ACCESSKEY="P" >上一页</A ></TD ><TD WIDTH="80%" ALIGN="center" VALIGN="bottom" >章 16. 控制结构</TD ><TD WIDTH="10%" ALIGN="right" VALIGN="bottom" ><A HREF="function.require.html" ACCESSKEY="N" >下一页</A ></TD ></TR ></TABLE ><HR ALIGN="LEFT" WIDTH="100%"></DIV ><DIV CLASS="sect1" ><H1 CLASS="sect1" ><A NAME="function.return" >return</A ></H1 ><P > 如果在一个函数中调用 <A HREF="function.return.html" ><B CLASS="function" >return()</B ></A > 语句,将立即结束此函数的执行并将它的参数作为函数的值返回。<A HREF="function.return.html" ><B CLASS="function" >return()</B ></A > 也会终止 <A HREF="function.eval.html" ><B CLASS="function" >eval()</B ></A > 语句或者脚本文件的执行。 </P ><P > 如果在全局范围中调用,则当前脚本文件中止运行。如果当前脚本文件是被 <A HREF="function.include.html" ><B CLASS="function" >include()</B ></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="function.return.html" ><B CLASS="function" >return()</B ></A > 的值会被当作 <A HREF="function.include.html" ><B CLASS="function" >include()</B ></A > 调用的返回值。如果在主脚本文件中调用 <A HREF="function.return.html" ><B CLASS="function" >return()</B ></A >,则脚本中止运行。如果当前脚本文件是在 <TT CLASS="filename" >php.ini</TT > 中的配置选项 <A HREF="ini.core.html#ini.auto-prepend-file" >auto_prepend_file</A > 或者 <A HREF="ini.core.html#ini.auto-append-file" >auto_append_file</A > 所指定的,则此脚本文件中止运行。 </P ><P > 更多信息见<A HREF="functions.returning-values.html" >返回值</A >。 </P ><DIV CLASS="note" ><BLOCKQUOTE CLASS="note" ><P ><B >注意: </B > 注意既然 <A HREF="function.return.html" ><B CLASS="function" >return()</B ></A > 是语言结构而不是函数,<SPAN CLASS="emphasis" ><I CLASS="emphasis" >仅在</I ></SPAN >参数包含表达式时才需要用括号将其括起来。当返回一个变量时通常不用括号,也建议不要用,这样可以降低 PHP 的负担。 </P ></BLOCKQUOTE ></DIV ><DIV CLASS="note" ><BLOCKQUOTE CLASS="note" ><P ><B >注意: </B > 当用引用返回值时<SPAN CLASS="emphasis" ><I CLASS="emphasis" >永远不要</I ></SPAN >使用括号,这样行不通。只能通过引用返回变量,而不是语句的结果。如果使用 <TT CLASS="literal" >return ($a);</TT > 时其实不是返回一个变量,而是表达式 <TT CLASS="literal" >($a)</TT > 的值(当然,此时该值也正是 <CODE CLASS="varname" >$a</CODE > 的值)。 </P ></BLOCKQUOTE ></DIV ></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="control-structures.declare.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.require.html" ACCESSKEY="N" >下一页</A ></TD ></TR ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" ><TT CLASS="literal" >declare</TT ></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.require.html" ><B CLASS="function" >require()</B ></A ></TD ></TR ></TABLE ></DIV ></BODY ></HTML >