<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <HTML ><HEAD ><TITLE >print_r</TITLE ><META NAME="GENERATOR" CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK REL="HOME" TITLE="PHP 手册" HREF="index.html"><LINK REL="UP" TITLE="Variable 变量函数" HREF="ref.var.html"><LINK REL="PREVIOUS" TITLE="isset" HREF="function.isset.html"><LINK REL="NEXT" TITLE="serialize" HREF="function.serialize.html"><META HTTP-EQUIV="Content-type" CONTENT="text/html; charset=UTF-8"></HEAD ><BODY CLASS="refentry" 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.isset.html" ACCESSKEY="P" >上一页</A ></TD ><TD WIDTH="80%" ALIGN="center" VALIGN="bottom" ></TD ><TD WIDTH="10%" ALIGN="right" VALIGN="bottom" ><A HREF="function.serialize.html" ACCESSKEY="N" >下一页</A ></TD ></TR ></TABLE ><HR ALIGN="LEFT" WIDTH="100%"></DIV ><H1 ><A NAME="function.print-r" ></A >print_r</H1 ><DIV CLASS="refnamediv" ><A NAME="AEN236919" ></A ><P > (PHP 4, PHP 5)</P >print_r -- 打印关于变量的易于理解的信息。 </DIV ><DIV CLASS="refsect1" ><A NAME="AEN236922" ></A ><H2 >描述</H2 >bool <B CLASS="methodname" >print_r</B > ( mixed expression [, bool return] )<BR ></BR ><DIV CLASS="note" ><BLOCKQUOTE CLASS="note" ><P ><B >注意: </B > 参数 <CODE CLASS="parameter" >return</CODE > 是在 PHP 4.3.0 的时候加上的 </P ></BLOCKQUOTE ></DIV ><P > <B CLASS="function" >print_r()</B > 显示关于一个变量的易于理解的信息。如果给出的是 <A HREF="language.types.string.html" ><B CLASS="type" >string</B ></A >、<A HREF="language.types.integer.html" ><B CLASS="type" >integer</B ></A > 或 <A HREF="language.types.float.html" ><B CLASS="type" >float</B ></A >,将打印变量值本身。如果给出的是 <A HREF="language.types.array.html" ><B CLASS="type" >array</B ></A >,将会按照一定格式显示键和元素。<A HREF="language.types.object.html" ><B CLASS="type" >object</B ></A > 与数组类似。 </P ><P > 记住,<B CLASS="function" >print_r()</B > 将把数组的指针移到最后边。使用 <A HREF="function.reset.html" ><B CLASS="function" >reset()</B ></A > 可让指针回到开始处。 </P ><P > <DIV CLASS="informalexample" ><P ></P ><A NAME="AEN236947" ></A ><TABLE BORDER="0" BGCOLOR="#E0E0E0" CELLPADDING="5" ><TR ><TD ><code><font color="#000000"> <pre><br /><font color="#0000BB"><?php<br /> $a </font><font color="#007700">= array (</font><font color="#DD0000">'a' </font><font color="#007700">=> </font><font color="#DD0000">'apple'</font><font color="#007700">, </font><font color="#DD0000">'b' </font><font color="#007700">=> </font><font color="#DD0000">'banana'</font><font color="#007700">, </font><font color="#DD0000">'c' </font><font color="#007700">=> array (</font><font color="#DD0000">'x'</font><font color="#007700">,</font><font color="#DD0000">'y'</font><font color="#007700">,</font><font color="#DD0000">'z'</font><font color="#007700">));<br /> </font><font color="#0000BB">print_r </font><font color="#007700">(</font><font color="#0000BB">$a</font><font color="#007700">);<br /></font><font color="#0000BB">?><br /></font></pre></font> </code></TD ></TR ></TABLE ><P ></P ></DIV > </P ><P > 上边的代码将输出: <TABLE BORDER="0" BGCOLOR="#E0E0E0" CELLPADDING="5" ><TR ><TD ><PRE CLASS="screen" ><pre> Array ( [a] => apple [b] => banana [c] => Array ( [0] => x [1] => y [2] => z ) ) </pre></PRE ></TD ></TR ></TABLE > </P ><P > 如果想捕捉 <B CLASS="function" >print_r()</B > 的输出,可使用 <CODE CLASS="parameter" >return</CODE > 参数。若此参数设为 <TT CLASS="constant" ><B >TRUE</B ></TT >,<B CLASS="function" >print_r()</B > 将不打印结果(此为默认动作),而是返回其输出。 </P ><P > <TABLE WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" CLASS="EXAMPLE" ><TR ><TD ><DIV CLASS="example" ><A NAME="AEN236957" ></A ><P ><B >例 1. <CODE CLASS="parameter" >return</CODE > 参数示例</B ></P ><TABLE BORDER="0" BGCOLOR="#E0E0E0" CELLPADDING="5" ><TR ><TD ><code><font color="#000000"> <font color="#0000BB"><?php<br /> $b </font><font color="#007700">= array (</font><font color="#DD0000">'m' </font><font color="#007700">=> </font><font color="#DD0000">'monkey'</font><font color="#007700">, </font><font color="#DD0000">'foo' </font><font color="#007700">=> </font><font color="#DD0000">'bar'</font><font color="#007700">, </font><font color="#DD0000">'x' </font><font color="#007700">=> array (</font><font color="#DD0000">'x'</font><font color="#007700">, </font><font color="#DD0000">'y'</font><font color="#007700">, </font><font color="#DD0000">'z'</font><font color="#007700">));<br /> </font><font color="#0000BB">$results </font><font color="#007700">= </font><font color="#0000BB">print_r </font><font color="#007700">(</font><font color="#0000BB">$b</font><font color="#007700">, </font><font color="#0000BB">true</font><font color="#007700">); </font><font color="#FF8000">//$results 包含了 print_r 的输出结果<br /></font><font color="#0000BB">?></font> </font> </code></TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE > </P ><DIV CLASS="note" ><BLOCKQUOTE CLASS="note" ><P ><B >注意: </B > 如果想在 PHP 4.3.0 之前的版本中捕捉 <B CLASS="function" >print_r()</B > 的输出,可使用<A HREF="ref.outcontrol.html" >输出控制函数</A >。 </P ></BLOCKQUOTE ></DIV ><DIV CLASS="note" ><BLOCKQUOTE CLASS="note" ><P ><B >注意: </B > 在 PHP 4.0.4 之前的版本中,如果给出的 <A HREF="language.types.array.html" ><B CLASS="type" >array</B ></A > 或 <A HREF="language.types.object.html" ><B CLASS="type" >object</B ></A > 包含了直接或间接指向自身的引用,<B CLASS="function" >print_r()</B > 将永远继续下去。<TT CLASS="literal" >print_r($GLOBALS)</TT > 就是一个例子,因为 <TT CLASS="literal" >$GLOBALS</TT > 自身即是全局变量,其包含了指向自身的引用。 </P ></BLOCKQUOTE ></DIV ><P > 参见 <A HREF="function.ob-start.html" ><B CLASS="function" >ob_start()</B ></A >、<A HREF="function.var-dump.html" ><B CLASS="function" >var_dump()</B ></A > 和 <A HREF="function.var-export.html" ><B CLASS="function" >var_export()</B ></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.isset.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.serialize.html" ACCESSKEY="N" >下一页</A ></TD ></TR ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" >isset</TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="ref.var.html" ACCESSKEY="U" >上一级</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" >serialize</TD ></TR ></TABLE ></DIV ></BODY ></HTML >