Sophie

Sophie

distrib > Mandriva > 2008.1 > x86_64 > by-pkgid > 05cd670d8a02b2b4a0ffb1756f2e8308 > files > 8740

php-manual-zh-5.2.4-1mdv2008.1.noarch.rpm

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<HTML
><HEAD
><TITLE
>parsekit_compile_string</TITLE
><META
NAME="GENERATOR"
CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK
REL="HOME"
TITLE="PHP 手册"
HREF="index.html"><LINK
REL="UP"
TITLE="Parsekit Functions"
HREF="ref.parsekit.html"><LINK
REL="PREVIOUS"
TITLE="parsekit_compile_file"
HREF="function.parsekit-compile-file.html"><LINK
REL="NEXT"
TITLE="parsekit_func_arginfo"
HREF="function.parsekit-func-arginfo.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.parsekit-compile-file.html"
ACCESSKEY="P"
>上一页</A
></TD
><TD
WIDTH="80%"
ALIGN="center"
VALIGN="bottom"
></TD
><TD
WIDTH="10%"
ALIGN="right"
VALIGN="bottom"
><A
HREF="function.parsekit-func-arginfo.html"
ACCESSKEY="N"
>下一页</A
></TD
></TR
></TABLE
><HR
ALIGN="LEFT"
WIDTH="100%"></DIV
><H1
><A
NAME="function.parsekit-compile-string"
></A
>parsekit_compile_string</H1
><DIV
CLASS="refnamediv"
><A
NAME="AEN169450"
></A
><P
>    (PECL)</P
>parsekit_compile_string&nbsp;--&nbsp;Compile a string of PHP code and return the resulting op array</DIV
><DIV
CLASS="refsect1"
><A
NAME="AEN169453"
></A
><H2
>说明</H2
>array <B
CLASS="methodname"
>parsekit_compile_string</B
> ( string phpcode [, array &#38;errors [, int options]] )<BR
></BR
><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
>本函数是<SPAN
CLASS="emphasis"
><I
CLASS="emphasis"
>实验性</I
></SPAN
>的。本函数的行为,包括函数名称以及其它任何关于本函数的文档可能会在没有通知的情况下随
PHP 以后的发布而改变。使用本函数风险自担。</P
></TD
></TR
></TABLE
></DIV
></DIV
><DIV
CLASS="refsect1"
><A
NAME="AEN169470"
></A
><H2
>参数</H2
><P
>&#13;   <P
></P
><DIV
CLASS="variablelist"
><DL
><DT
><CODE
CLASS="parameter"
>phpcode</CODE
></DT
><DD
><P
>&#13;       A string containing phpcode. Similar to the argument to <A
HREF="function.eval.html"
><B
CLASS="function"
>eval()</B
></A
>.
      </P
></DD
><DT
><CODE
CLASS="parameter"
>errors</CODE
></DT
><DD
><P
>&#13;       A 2D hash of errors (including fatal errors) encountered during compilation.
       Returned by reference.
      </P
></DD
><DT
><CODE
CLASS="parameter"
>options</CODE
></DT
><DD
><P
>&#13;       One of either <TT
CLASS="constant"
><B
>PARSEKIT_QUIET</B
></TT
> or 
       <TT
CLASS="constant"
><B
>PARSEKIT_SIMPLE</B
></TT
>. To produce varying
       degrees of verbosity in the returned output.
      </P
></DD
></DL
></DIV
>
  </P
></DIV
><DIV
CLASS="refsect1"
><A
NAME="AEN169492"
></A
><H2
>返回值</H2
><P
>&#13;   Returns a complex multi-layer array structure as detailed below.
  </P
></DIV
><DIV
CLASS="refsect1"
><A
NAME="AEN169495"
></A
><H2
>范例</H2
><P
>&#13;   <TABLE
WIDTH="100%"
BORDER="0"
CELLPADDING="0"
CELLSPACING="0"
CLASS="EXAMPLE"
><TR
><TD
><DIV
CLASS="example"
><A
NAME="AEN169498"
></A
><P
><B
>例 1. <B
CLASS="function"
>parsekit_compile_string()</B
> example</B
></P
><TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
CELLPADDING="5"
><TR
><TD
><code><font color="#000000">
<font color="#0000BB">&lt;?php<br />&nbsp;&nbsp;$ops </font><font color="#007700">= </font><font color="#0000BB">parsekit_compile_string</font><font color="#007700">(</font><font color="#DD0000">'<br />echo "Foo\n";<br />'</font><font color="#007700">, </font><font color="#0000BB">$errors</font><font color="#007700">, </font><font color="#0000BB">PARSEKIT_QUIET</font><font color="#007700">);<br /><br />&nbsp;&nbsp;</font><font color="#0000BB">var_dump</font><font color="#007700">(</font><font color="#0000BB">$ops</font><font color="#007700">);<br /></font><font color="#0000BB">?&gt;</font>
</font>
</code></TD
></TR
></TABLE
><P
>上例将输出:</P
><TABLE
BORDER="0"
BGCOLOR="#E0E0E0"
CELLPADDING="5"
><TR
><TD
><PRE
CLASS="screen"
>array(20) {
  ["type"]=&#62;
  int(4)
  ["type_name"]=&#62;
  string(14) "ZEND_EVAL_CODE"
  ["fn_flags"]=&#62;
  int(0)
  ["num_args"]=&#62;
  int(0)
  ["required_num_args"]=&#62;
  int(0)
  ["pass_rest_by_reference"]=&#62;
  bool(false)
  ["uses_this"]=&#62;
  bool(false)
  ["line_start"]=&#62;
  int(0)
  ["line_end"]=&#62;
  int(0)
  ["return_reference"]=&#62;
  bool(false)
  ["refcount"]=&#62;
  int(1)
  ["last"]=&#62;
  int(3)
  ["size"]=&#62;
  int(3)
  ["T"]=&#62;
  int(0)
  ["last_brk_cont"]=&#62;
  int(0)
  ["current_brk_cont"]=&#62;
  int(-1)
  ["backpatch_count"]=&#62;
  int(0)
  ["done_pass_two"]=&#62;
  bool(true)
  ["filename"]=&#62;
  string(17) "Parsekit Compiler"
  ["opcodes"]=&#62;
  array(3) {
    [8594800]=&#62;
    array(5) {
      ["opcode"]=&#62;
      int(40)
      ["opcode_name"]=&#62;
      string(9) "ZEND_ECHO"
      ["flags"]=&#62;
      int(768)
      ["op1"]=&#62;
      array(3) {
        ["type"]=&#62;
        int(1)
        ["type_name"]=&#62;
        string(8) "IS_CONST"
        ["constant"]=&#62;
        &#38;string(4) "Foo
"
      }
      ["lineno"]=&#62;
      int(2)
    }
    ["859484C"]=&#62;
    array(6) {
      ["opcode"]=&#62;
      int(62)
      ["opcode_name"]=&#62;
      string(11) "ZEND_RETURN"
      ["flags"]=&#62;
      int(16777984)
      ["op1"]=&#62;
      array(3) {
        ["type"]=&#62;
        int(1)
        ["type_name"]=&#62;
        string(8) "IS_CONST"
        ["constant"]=&#62;
        &#38;NULL
      }
      ["extended_value"]=&#62;
      int(0)
      ["lineno"]=&#62;
      int(3)
    }
    [8594898]=&#62;
    array(4) {
      ["opcode"]=&#62;
      int(149)
      ["opcode_name"]=&#62;
      string(21) "ZEND_HANDLE_EXCEPTION"
      ["flags"]=&#62;
      int(0)
      ["lineno"]=&#62;
      int(3)
    }
  }
}</PRE
></TD
></TR
></TABLE
></DIV
></TD
></TR
></TABLE
>
  </P
></DIV
><DIV
CLASS="refsect1"
><A
NAME="AEN169504"
></A
><H2
>参见</H2
><P
>&#13;   <P
></P
><TABLE
BORDER="0"
><TBODY
><TR
><TD
><A
HREF="function.parsekit-compile-file.html"
><B
CLASS="function"
>parsekit_compile_file()</B
></A
></TD
></TR
></TBODY
></TABLE
><P
></P
>
  </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.parsekit-compile-file.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.parsekit-func-arginfo.html"
ACCESSKEY="N"
>下一页</A
></TD
></TR
><TR
><TD
WIDTH="33%"
ALIGN="left"
VALIGN="top"
>parsekit_compile_file</TD
><TD
WIDTH="34%"
ALIGN="center"
VALIGN="top"
><A
HREF="ref.parsekit.html"
ACCESSKEY="U"
>上一级</A
></TD
><TD
WIDTH="33%"
ALIGN="right"
VALIGN="top"
>parsekit_func_arginfo</TD
></TR
></TABLE
></DIV
></BODY
></HTML
>