<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <HTML ><HEAD ><TITLE >如何阅读函数的定义(函数原型)</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="about.html"><LINK REL="PREVIOUS" TITLE="关于用户注释" HREF="about.notes.html"><LINK REL="NEXT" TITLE="本手册中所涉及的 PHP 版本" HREF="about.phpversions.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="about.notes.html" ACCESSKEY="P" >上一页</A ></TD ><TD WIDTH="80%" ALIGN="center" VALIGN="bottom" >附录 T. 关于本手册</TD ><TD WIDTH="10%" ALIGN="right" VALIGN="bottom" ><A HREF="about.phpversions.html" ACCESSKEY="N" >下一页</A ></TD ></TR ></TABLE ><HR ALIGN="LEFT" WIDTH="100%"></DIV ><DIV CLASS="sect1" ><H1 CLASS="sect1" ><A NAME="about.prototypes" >如何阅读函数的定义(函数原型)</A ></H1 ><P > 文档中的每个函数都只是快速参考,学会如何阅读和理解文档将使得 PHP 的使用更加简单。和依赖赖于复制/粘贴范例比起来,用户一定更希望知道如何阅读函数的定义(函数原型): </P ><DIV CLASS="note" ><BLOCKQUOTE CLASS="note" ><P ><B >先决条件,对<A HREF="language.types.html" >变量类型</A >的基本理解: </B > 尽管 PHP 是亚类型语言,但对<A HREF="language.types.html" >变量类型</A >有一个基本的理解也是非常重要的,因为它们有重要的意义。 </P ></BLOCKQUOTE ></DIV ><P > 函数定义告诉我们函数<A HREF="functions.returning-values.html" >返回</A >什么类型的值,让我们用函数 <A HREF="function.strlen.html" ><B CLASS="function" >strlen()</B ></A > 的定义作为第一个范例: </P ><P > <TABLE BORDER="0" BGCOLOR="#E0E0E0" CELLPADDING="5" ><TR ><TD ><PRE CLASS="html" >strlen (PHP 3, PHP 4, PHP 5) strlen -- 获取字符串长度 描述 int strlen ( string str ) 返回字符串的长度。</PRE ></TD ></TR ></TABLE > </P ><P > <DIV CLASS="table" ><A NAME="AEN305482" ></A ><P ><B >表 T-1. 函数定义</B ></P ><TABLE BORDER="1" CLASS="CALSTABLE" ><COL><COL><THEAD ><TR ><TH >组成部分</TH ><TH >说明</TH ></TR ></THEAD ><TBODY ><TR ><TD > strlen </TD ><TD > 函数名称 </TD ></TR ><TR ><TD > (PHP 3, PHP 4, PHP 5) </TD ><TD > strlen() 在 PHP 3 、PHP 4 和 PHP 5 中都存在 </TD ></TR ><TR ><TD > int </TD ><TD > 该函数返回的值的类型,这里为整型。(例如,字符串的长度是以数字来衡量的) </TD ></TR ><TR ><TD > ( string str ) </TD ><TD > 第一个(本例中是唯一的)参数,在该函数中名为 <CODE CLASS="parameter" >str</CODE >,且类型为 <A HREF="language.types.string.html" ><B CLASS="type" >string</B ></A >。 </TD ></TR ></TBODY ></TABLE ></DIV > </P ><P > 可以将以上函数的定义写成一般形式: </P ><P > <TABLE BORDER="0" BGCOLOR="#E0E0E0" CELLPADDING="5" ><TR ><TD ><PRE CLASS="screen" >返回类型 函数名 ( 参数类型 参数名 )</PRE ></TD ></TR ></TABLE > </P ><P > 很多函数都有多个变量,例如 <A HREF="function.in-array.html" ><B CLASS="function" >in_array()</B ></A >。其函数原型如下: </P ><P > <TABLE BORDER="0" BGCOLOR="#E0E0E0" CELLPADDING="5" ><TR ><TD ><PRE CLASS="screen" >bool in_array ( mixed needle, array haystack [, bool strict])</PRE ></TD ></TR ></TABLE > </P ><P > 这是什么意思?<A HREF="function.in-array.html" ><B CLASS="function" >in_array()</B ></A > 返回一个“<A HREF="language.types.boolean.html" >布尔</A >”值,成功(如果在参数 <CODE CLASS="parameter" >haystack</CODE > 中能找到参数 <CODE CLASS="parameter" >needle</CODE >)则返回 <TT CLASS="constant" ><B >TRUE</B ></TT > 或者失败(如果在参数 <CODE CLASS="parameter" >haystack</CODE > 中找不到参数 <CODE CLASS="parameter" >needle</CODE >)则返回 <TT CLASS="constant" ><B >FALSE</B ></TT >。第一个参数被命名为 <CODE CLASS="parameter" >needle</CODE > 且其<A HREF="language.types.html" >类型</A >不定,因此我们将其称为“<SPAN CLASS="emphasis" ><I CLASS="emphasis" >混和</I ></SPAN >”类型。该混和类型的 <CODE CLASS="parameter" >needle</CODE > 参数(我们要找的对象)可以适一个标量的值(字符串、整数、或者<A HREF="language.types.float.html" >浮点数</A >),或者一个<A HREF="language.types.array.html" >数组</A >。<CODE CLASS="parameter" >haystack</CODE >(我们寻找的范围)是第二个参数。第三个<SPAN CLASS="emphasis" ><I CLASS="emphasis" >可选</I ></SPAN >参数被命名为 <CODE CLASS="parameter" >strict</CODE >。所有的可选参数都用 <SPAN CLASS="emphasis" ><I CLASS="emphasis" >[</I ></SPAN > 方括号 <SPAN CLASS="emphasis" ><I CLASS="emphasis" >]</I ></SPAN > 括起来。手册表明 <CODE CLASS="parameter" >strict</CODE > 参数默认值为布尔值 <TT CLASS="constant" ><B >FALSE</B ></TT >。需要了解函数工作的细节,请参阅手册中和该函数相关的页面。 </P ><P > 有的函数包含更复杂的 PHP 版本信息。我们拿 <A HREF="function.html-entity-decode.html" ><B CLASS="function" >html_entity_decode()</B ></A > 举例: </P ><P > <TABLE BORDER="0" BGCOLOR="#E0E0E0" CELLPADDING="5" ><TR ><TD ><PRE CLASS="screen" >(PHP 4 >= 4.3.0, PHP 5)</PRE ></TD ></TR ></TABLE > </P ><P > 它意味着该函数不可在 PHP 3 中使用,只可在 PHP 4.3.0 及以后发布的版本中使用。 </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="about.notes.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="about.phpversions.html" ACCESSKEY="N" >下一页</A ></TD ></TR ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" >关于用户注释</TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="about.html" ACCESSKEY="U" >上一级</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" >本手册中所涉及的 PHP 版本</TD ></TR ></TABLE ></DIV ></BODY ></HTML >