cvs: phpdoc-hk /language basic-syntax.xml variables.xml

[email protected] ("Kevin Kee") Sun, 15 Jun 2003 15:00:46 -0000
Newsgroups php.doc.hk
Message-ID <cvskevinkee1055689246@cvsserver>
kevinkee		Sun Jun 15 11:00:46 2003 EDT

  Modified files:              
    /phpdoc-hk/language	basic-syntax.xml variables.xml 
  Log:
  update 2 files
kevinkee-20030615110046.txt (text/plain, 75.9 KB)
Index: phpdoc-hk/language/basic-syntax.xml
diff -u phpdoc-hk/language/basic-syntax.xml:1.3 phpdoc-hk/language/basic-syntax.xml:1.4
--- phpdoc-hk/language/basic-syntax.xml:1.3	Wed Dec 12 15:50:28 2001
+++ phpdoc-hk/language/basic-syntax.xml	Sun Jun 15 11:00:46 2003
@@ -1,128 +1,231 @@
 <?xml version="1.0" encoding="big5"?>
-  <chapter id="language.basic-syntax">
-   <title>°ò¥»¥yªk</title>
+<!-- $Revision: 1.4 $ -->
+ <chapter id="language.basic-syntax">
+  <title>°ò¥»»yªk</title>
 
-   <sect1 id="language.basic-syntax.phpmode">
-    <title>¶i¤J PHP »y¨¥¼Ò¦¡</title>
+   <!--
+   
+    NOTE:                             Last modified: 2001-05-16 13:00 GMT
+    
+    the language part is currently under heavy revision. Please do not
+    not make any heavy (i.e. structural) modifications to this part 
+    for a moment. 
+    
+    You'd also better not start any translation yet.
+    
+    Comments are always welcome at [email protected]
+    
+    Progress:
+    
+     intro : DOESN'T EXIST - yet?
+             new chapter, with some introductionary remarks?
+             Will be discussed on the ML soon.
+     basic-syntax: 
+             FINISHED
+             except maybe moving the 'advanced escaping'
+             to a better place?
+             TODO: 
+              - nada
+     types : Being revised. Added all new types
+             Boolean and Integer are more or less finished.
+             The rest isn't.
+             TODO: 
+              - why is $foo[bar] bad syntax?
+              - what's the difference between unset($bla) and
+                $bla = NULL; (it is different!)
+              - $obj->{expr} syntax
+              - (unset) cast?????
+              - $bla = unset <== should've been nuked, don't mention it
+              - $str{offset} syntax, rather than $str[offset]
+              - read notes and apply when any of them are useful
+              - remove notes which have been included here.
+              - ...
+     the rest: Not yet started with.
+             TODO: 
+              - ?
+     oop   : has been revised by Kristian, DONE.
+   -->
+   
+  <sect1 id="language.basic-syntax.phpmode">
+   <title>±q HTML ¤¤¶h¥X</title>
   
-    <para>
-     ¦b HTML ¤å¥ó¤¤´¡¤J PHP ªº«ü¥O¦@¦³¥|ºØ¤èªk: </para>
+   <para>
+    ·í PHP ­åªR¤@­ÓÀɮ׮ɡA¥¦¬O¤£·|¹ï¤@¯ë¦r¤¸§@¥ô¦ó³B²z¡A°£«D¥¦¹J¤W¤F¨ä¤¤¤@­Ó¯S®í¼ÐÅÒ¡A¼Ð©ú PHP µ{¦¡ªº¶}©l¡C³o®É¡APHP ¤~¶}©l¥H PHP µ{¦¡½X¨Ó¸Ñ͏Ӭq¤å¦r¡A¦Ü¨ì¥¦¹J¤W PHP µ{¦¡½Xµ²§ôªº¼ÐÅÒ¡C¦¹µ²§À¼Ð°O¥H«áªº¤å¦r¤S·|³Q·í§@¬O´¶³q¤å¦r¨Ó³B²z¤F¡C³oºØ³B²z¤èªkÅý±z»´©öªº¦b HTML ¤å¥ó¤¤´O¤J PHP ªºµ{¦¡½X¡CPHP ¼ÐÅÒ¥H¤ºªº±N·í§@¬O PHP µ{¦¡½X¨Ó­åªR¡B¼ÐÅÒ¥H¥~ªº«h­ì«Ê¤£°Ê¡C
+   </para>
+
+   <para>
+    ¥Î¨Óªí¥Ü PHP µ{¦¡½X°Ï¶ôªº¼ÐÅÒ¦@¦³¥|®M¡A·í¤¤¥u¦³ &lt;?php. . .?&gt; ©M &lt;script
+    language="php"&gt;. . .&lt;/script&gt; ¨â®M¬O¸g±`¥i¥H¨Ï¥Îªº¡C¥t¥~¨â®M (&lt;?. . . ?&gt; ¤Î &lt;script language="php"&gt;. . .&lt;/script&gt;) ¥i¥H³q¹L³]©w &php.ini; ÀɨӶ}Ãö¡CÁöµMµu«¬ªº©M ASP ¦¡ªº¼ÐÅҨϥΰ_¨Ó¸û¬°¤è«K¡A¦ý¦b­Ý®e¤W¥¦­Ì«o©l²×¤ñ¤£¤Wªø«¬ªº¡C¨Ò¦p¡A¦pªG±z­n¦b XML ©Î XHTML ¤¤´O¤J PHPµ{¦¡½X¡A¨º±z´N¤@©w­n¨Ï¥Î &lt;?php. . .?&gt; «¬ªº¼ÐÅÒ¥H²Å¦X XML ªº¼Ð·Ç¤F¡C
+   </para>
+
+   <para>
+    PHP ¤ä´©ªº¼ÐÅÒ¥]¬A¡G
+   </para>
 
     <para>
      <example>
-      <title>Ways of escaping from HTML</title>
-      <programlisting>
-1.  &lt;? echo ("this is the simplest, an SGML processing instruction\n"); ?&gt;
- 
-2.  &lt;?php echo("if you want to serve XHTML or XML documents, do like this\n"); ?&gt;
-
-3.  &lt;script language="php"&gt; 
+      <title>¶h¥X HTML ªº¤è¦¡</title>
+      <programlisting role="php">
+<![CDATA[
+1.  <?php echo("if you want to serve XHTML or XML documents, do like this\n"); ?>
+
+2.  <? echo ("this is the simplest, an SGML processing instruction\n"); ?>
+    <?= expression ?> This is a shortcut for "<? echo expression ?>"
+    
+3.  <script language="php">
         echo ("some editors (like FrontPage) don't
               like processing instructions");
-    &lt;/script&gt;
+    </script>
 
-4.  &lt;% echo ("You may optionally use ASP-style tags"); %&gt;
-    &lt;%= $variable; # This is a shortcut for "&lt;%echo .." %&gt;
+4.  <% echo ("You may optionally use ASP-style tags"); %>
+    <%= $variable; # This is a shortcut for "<% echo . . ." %>
+]]>
       </programlisting>
      </example>
     </para>
 
-    <para>
-     ¤W­±¦C¥Xªº¤èªk¤¤²Ä¤@ºØ¥u·í PHP ³Q³]©w¦¨±µ¨ü "µu¼ÐÅÒ" ®É¤~·|¦³®Ä¡C ³]©w¤èªk¥i¥H
-     <!-- via the <function>short_tags</function> function,-->¦b½Õ³]¤å¥ó PHP.INI ¤¤§â
-     <link linkend="ini.short-open-tag">short_open_tag</link>
-     ³]¬°¯u­È¡A ©ÎªÌ¦b½sĶ PHP ®É°õ¦æ    <command>configure</command>
-®É¥[¤J --enable-short-tags ³o­Ó¿ï¶µ¡C
-    </para>
-
-    <para>
-     The second way is the generally preferred method, as it allows for the
-     next generation of XHTML to be easily implemented with PHP.
-    </para>
+   <para>
+    ²Ä¤@ºØ¤èªk (&lt;?php. . .?&gt;) ¬O³Q«ØÄ³¨Ï¥Îªº¡A¦]¬°¥¦¥i¥HÅý±z¦b²Å¦X XML ¼Ð·ÇªºXHTML ½X¤¤´O¤J PHP µ{¦¡½X¡C
+   </para>
+
+   <para>
+    ²Ä¤GºØ¤èªk¥u¦³¦b±Ò°Ê¥H«á¤~¥i¥H¨Ï¥Î¡A¦Ó¶}±Òªº¤è¦¡¥]¬A¡G¨Ï¥Î <function>short_tags</function> ¨ç¼Æ (¥u¦³ PHP 3 ¦Ó¤w)¡A¦b PHP ²ÕºAÀɤ¤¶}±Ò <link linkend="ini.short-open-tag">short_open_tag</link>¡A©Î¦b½sĶ PHP ®É¦b <command>configure</command> ¥[¤J -enable-short-tag ¿ï¶µ¡C§Y¨Ï¦b php.ini-dist Àɤ¤³Q¹w³]¬°¶}±Ò¡Aµu«¬ªº¼ÐÅÒÁÙ¬O¤£³Q«ØÄ³¨Ï¥Îªº¡C
+   </para>
 
-    <para>
-     ²Ä¥|ºØ¤èªk¤]¥u¦³·í ASP §ÎºAªº¼ÐÅÒ ³Q¤¹³\®É¤~¦³®Ä¡C ³o»Ý­n½Õ³] 
-<link linkend="ini.asp-tags">asp_tags</link>
-³o­Ó°Ñ¼Æ¡C 
+   <para>
+    ²Ä¥|ºØ ASP ¦¡ªº¼ÐÅÒ¥u¦³¦b²ÕºAÀɤ¤¶}±Ò¤F <link linkend="ini.asp-tags">asp_tags</link> «á¤~¯à¨Ï¥Î¡C
 
     <note>
-     <para>¹ï ASP-style ¼ÐÅÒªº¤ä´©±q PHP ²Ä 3.0.4 ª©¶}©l.</para>
-    </note></para>
+     <para>ASP ¦¡¼ÐÅÒªº¤ä´©¦b 3.0.4 ª©¥»¤~¥[¤Jªº¡C</para>
+    </note>
+   </para>
 
+   <note>
     <para>
-µ{¦¡¬qªºµ²§ô¼Ð°O±N·|¥]¬A¸òÀH¦b¨ä«áªº´«¦æ²Å¸¹¡C (°²¦p¦³´«¦æ²Å¸¹ªº¸Ü¡C) 
-</para></sect1>
-
-   <sect1 id="language.basic-syntax.instruction-separation">
-    <title>¤À¹j«ü¥O</title>
-
-    <simpara>
-    PHP ¦U«ü¥O¦æ¤§¶¡ªº¤À¹j¤èªk©M C¡B PERL ¬O¤@¼Ëªº¡C - ¨C¦æ«ü¥O¶¡¥Î¤À¸¹ ";" ¤À¶}¡C </simpara>
+     ¦b¶}µo¤j«¬µ{¦¡¡B½s¼g¥Î¨Ó¦A¤À°tªºµ{¦¡®w¡A©Î±N±zªºµ{¦¡³¡¸p¦b§O¤Hªº¦øªA¾¹¤W®É¡A§Ú­Ì«ØÄ³±z¨Ï¥Îªø«¬ªº PHP ¼ÐÅÒ¡A¦]¬°¨Ã«D©Ò¦³ªº¦øªA¾¹³£¶}±Ò¤Fµu¼ÐÅÒªº¤ä´©¡C
+    </para>
+   </note>
 
-    <para>
-     ¥Ñ©óµ{¦¡¬qµ²§ô¼ÐÅÒ¦P¼Ë¥Nªí«ü¥Oµ²§ô¡A ¦]¦¹¥H¤Uªº¨â¬qµ{¦¡¬O®ÄªG¬O¤@¼Ëªº¡C 
-     <informalexample>
-      <programlisting>
-&lt;?php
+   <para>
+    µ{¦¡°Ï¶ôªºµ²§À¼Ð°O±N¥]¬AºòÀH¨ä«áªº´«¦æ¦r¤¸¡£­Y¦³ªº¸Ü¡¤¡C¦¹¥~¡Aµ²§À¼Ð°O¤w¥]§t¤F¤À¸¹ (;)¡A©Ò¥H±z¤£¥²¦A¬°¥¦¥[¤W¡C
+   </para>
+    
+    <para>
+    PHP ¤¹³\±z¨Ï¥Î¦p¤Uªº¼gªk¡G
+    <example><title>¶i¶¥¶h¥X½d¨Ò</title>
+     <programlisting role="php">
+<![CDATA[
+<?php
+if ($expression) { 
+    ?>
+    <strong>This is true.</strong>
+    <?php 
+} else { 
+    ?>
+    <strong>This is false.</strong>
+    <?php 
+}
+?>
+]]>
+     </programlisting>
+    </example>
+    ¤W­zµ{¦¡½X±N¦p±`ªº¹B§@¡A¦]¬°·í PHP ¹J¤W ?&gt; µ²§À¼Ð°O®É¡A¥¦±N¤£¥[³B²zªº¿é¥X©Ò¦³¤å¦r¡Aª½¨ì¹J¤W¥t¤@­Ó¶}©l¼ÐÅÒ¡C·í±zªºµ{¦¡»Ý­n¿é¥X¤j¶qªº¤å¦r®É¡A¨Ï¥Î¤W­z¶h¥X¤èªk¿é¥X¤å¦r¨ä®Ä²v·|¤ñ¨Ï¥Î <function>echo</function> ©Î <function>print()</function> ¨ç¼Æ¨Ó±o§ó°ª¡C
+   </para>
+  </sect1>
+  
+  <sect1 id="language.basic-syntax.instruction-separation">
+   <title>«ü¥O¤À¹j</title>
+   
+   <simpara>
+    PHP «ü¥Oªº¤À¹j»P C ©Î Perl ªº¬Û¦P¡A§Y¥H¤À¸¹ (;) ¨Óµ²§ô¤@¦æ±Ô­z¡C
+    </simpara>
+
+   <para>
+    µ²§À¼Ð°O (?&gt;) ¤]¦P®É·N¨ýµÛ±Ô­zªºµ²§ô¡AµL¶·¦A¥[¤À¸¹¡A©Ò¥H¤U¦C¨â¥y¬O¬Û¦Pªº¡G
+
+    <informalexample>
+     <programlisting role="php">
+<![CDATA[
+<?php
     echo "This is a test";
 ?>
 
-&lt;?php echo "This is a test" ?>
-      </programlisting>
-     </informalexample></para></sect1>
+<?php echo "This is a test" ?>
+]]>
+     </programlisting>
+    </informalexample>
+   </para>
+  </sect1>
 
-   <sect1 id="language.basic-syntax.comments">
-    <title>¥[ª`ÄÀªº¤èªk</title>
+  <sect1 id="language.basic-syntax.comments">
+   <title>µù¸Ñ</title>
    
-    <para>
-     PHP ¤W¥i¥H¥Î C¡B C++¡B ©M Unix shell ªºª`ÄÀ¤èªk¡C ¦bª`ÄÀ¸¹¤ºªº¤º®e±N³Q PHP ¸ÑÄÀ¾¹©¿²¤¡C ¤ñ¦p»¡ : 
+   <para>
+    PHP ¤ä´© C¡BC++ ©M Unix shell ¦¡ªºµù¸Ñ¤èªk¡C½d¨Ò¡G
 
-    <informalexample><programlisting>
-&lt;?php
+    <informalexample>
+     <programlisting role="php">
+<![CDATA[
+<?php
     echo "This is a test"; // This is a one-line c++ style comment
     /* This is a multi line comment
        yet another line of comment */
     echo "This is yet another test";
     echo "One Final Test"; # This is shell-style style comment
 ?>
+]]>
      </programlisting>
-    </informalexample></para>
-
-    <simpara>
-    ¦Ü©ó¨ººØ¥uª`¸Ñ¤@¦æªºª`ÄÀ²Å¸¹ªº§@¥Î½d³ò¥u·|¦b¥»¦æ¤º¦³®Ä¡C ( ¦p¥»¦æ¤¤¦P®É¥X²{ PHP µ{üF¬qµ²§ô²Å¸¹ "?>" «h¦b²Å¸¹«áªº¤å¦r±N¤£·|³Q©¿²¤¡C)</simpara>
-    <informalexample><programlisting>
-&lt;h1>This is an &lt;?php # echo "simple";?> example.&lt;/h1>
-&lt;p>The header above will say 'This is an example'.
-</programlisting></informalexample> 
-
-    <simpara>
-¦pªG¬O C ªº®æ¦¡¨Ó°µª`ÄÀ¡A ª`·N¤£­n¹³¤U¨Ò¯ë¦bª`ÄÀ¤¤¦A¥[ª`ÄÀ¡A §_«h·|³y¦¨¿ù»~¡C
-
-</simpara>
+    </informalexample>
+   </para>
 
-    <informalexample><programlisting>
-&lt;?php
+   <simpara>
+    ³æ¦æ¦¡ªºµùÄÀ¤è¦¡¥u¾A¥Î©ó¸Ó¦æ¡£¦Ü¦æ¥½¡¤¡A©Î©Ò¦b°Ï¶ôªº PHP µ{¦¡½X¤º¡Aµø¦óªÌ¥ý¥X²{¡C³oªí¥Ü // ?> «áªº HTML ½X±N·|³Q¿é¥X¡B?> ´N¸õ¥X PHP ¼Ò¦¡¡A¦Ó // «h¤£·|¼vÅT¨ì¼Ò¦¡ªºÂàÅÜ¡C
+   </simpara>
+   <informalexample>
+    <programlisting role="php">
+<![CDATA[
+<h1>This is an <?php # echo "simple";?> example.</h1>
+<p>The header above will say 'This is an example'.
+]]>
+    </programlisting>
+   </informalexample> 
+
+   <simpara>
+    ¦b¨Ï¥Î C ¦¡ªºµùÄÀ®É¡A¤d¸U§O±N¤@­Ó C ¦¡µùÄÀ©ñ¦b¥t¤@­Ó¸Ì­±¡C³o¦bµùÄÀ¤j¬q¤å¦r®É¸g±`µo¥Í¡C
+   </simpara>
+
+   <informalexample>
+    <programlisting role="php">
+<![CDATA[
+<?php
  /* 
     echo "This is a test"; /* This comment will cause a problem */
  */
 ?>
-    </programlisting></informalexample></sect1>
-  </chapter>
+]]>
+    </programlisting>
+   </informalexample>
+
+  </sect1>
+ </chapter>
  
- <!-- Keep this comment at the end of the file
- Local variables:
- mode: sgml
- sgml-omittag:t
- sgml-shorttag:t
- sgml-minimize-attributes:nil
- sgml-always-quote-attributes:t
- sgml-indent-step:1
- sgml-indent-data:t
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-omittag:t
+sgml-shorttag:t
+sgml-minimize-attributes:nil
+sgml-always-quote-attributes:t
+sgml-indent-step:1
+sgml-indent-data:t
 indent-tabs-mode:nil
- sgml-parent-document:nil
- sgml-default-dtd-file:"../manual.ced"
- sgml-exposed-tags:nil
- sgml-local-catalogs:nil
- sgml-local-ecat-files:nil
- End:
- -->
+sgml-parent-document:nil
+sgml-default-dtd-file:"../../manual.ced"
+sgml-exposed-tags:nil
+sgml-local-catalogs:nil
+sgml-local-ecat-files:nil
+End:
+vim600: syn=xml fen fdm=syntax fdl=2 si
+vim: et tw=78 syn=sgml
+vi: ts=1 sw=1
+-->
Index: phpdoc-hk/language/variables.xml
diff -u phpdoc-hk/language/variables.xml:1.4 phpdoc-hk/language/variables.xml:1.5
--- phpdoc-hk/language/variables.xml:1.4	Sat May 24 09:18:32 2003
+++ phpdoc-hk/language/variables.xml	Sun Jun 15 11:00:46 2003
@@ -1,928 +1,812 @@
-<?xml version="1.0" encoding="big5"?>
- <chapter id="language.variables">
-  <title>¦UÃþÅܼÆ</title>
-  
-  <sect1 id="language.variables.basics">
-   <title>°ò¥»ª¾ÃÑ</title>
-
-   <simpara>
-    ©Ò¦³ PHP ªºÅܼƫe­±³£¦³¤@­Ó "$" ²Å¸¹¡A «á­±¸òµÛÅܼƪº¦W¦r¡C ª`·NÅܼƦWºÙ¬O¤À¤j¤p¼gªº¡C
-   </simpara>
-
-   <para>
-    PHP ªºÅܼƦWºÙ©M¨ä¥L¼ÐÅÒ¦³µÛ¬Û¦Pªº³W«h¡C¤@­Ó¦³®ÄªºÅܼƬO¥Ñ­^¤å¦r¥À©Î©³½u¶}©l¡A¸òµÛ¬O¥ô·Nªøµuªº¦r¥À¡B¼Æ¦r©Î©³½u¡C«ö¥¿³W¹Bºâ¦¡¡A¥¦¥i¥Hªí¹F¬°¡G'[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*'
-   </para>
-
-   <note>
-    <simpara>
-    ª`¡G¦r¥À¬° a-z¡AA-Z¡A¦Ó ASCII ¦r²Å«h±q 127 ¦Ü 255¡q0x7f-0xff¡r¡C
-    </simpara>
-   </note>
-
-   <para>
-    <informalexample>
-     <programlisting role="php"> 
-$var = "Bob";
-$Var = "Joe";
-echo "$var, $Var";      // outputs "Bob, Joe"
-
-$4site = 'not yet';     // invalid; starts with a number
-$_4site = 'not yet';    // valid; starts with an underscore
-$täyte = 'mansikka';    // valid; '?' is ASCII 228.
-     </programlisting>
-    </informalexample>
-   </para>
-
-   <para>
-   ¦b PHP3 ªº®É´Á¡A «ü©wµ¹Åܼƪº³£¬O­È¡A ¨Ò¦p§â¤@¦æªí¹F¦¡«ü©wµ¹Åܼƪº¸Ü¡A ÅܼƩÒÀx¦sªº±N¬Oªí¹F¦¡­pºâ¥X¨Óªº­È¡C ¥¦ªº¤Þ¥Ó·N¸q¬O¦pªG§A§â¬YÅܼƫü©wµ¹¥t¤@­ÓÅܼƫá¡A §ïÅܨ䤤¤@­Óªº¤º®e¨Ã¤£·|¼vÅT¥t¥~ªº¤@­Ó¡C ·Q¶i¤@¨BÁA¸Ñ³oºØ«ü©wÅܼƤèªk¡A ½Ð¬Ý 
-<link
-    linkend="language.expressions">ªí¹F¦¡</link>¤@¸`¡C 
-   </para>
-   <para>
-    PHP4 «h´£¨Ñ¤F¥t¤@ºØ«ü©wÅܼƪº¤èªk: 
-    <emphasis>ÅܼưѷÓ</emphasis>. ·N«ä¬O·sÅܼƥu¬O°Ñ·Ó¥»¨ÓªºÅܼƤ¤ªº­È¡C (´«­Ó»¡ªk¡A ·sªºÅܼƥu¬O¥»¨ÓªºÅܼƪº"§O¦W"¡A ¤]¥i»¡·sÅܼƬOÂÂÅܼƪº"«ü¼Ð") µL½×§ïÅÜ­þ¤@­ÓÅܼơA §ï°Ê³£¦P®É¤Ï¬M¦b¥t¤@­ÓÅܼƤ¤¡C ¥Ñ©óÂÂÅܼƪº­È¨Ã¨S¦³³Q§Û¨ì·sÅܼƤ¤¡A ©Ò¥H³oºØ«ü©wÅܼƪº¤èªk°õ¦æ®É·|§Ö¤@ÂI¡A ¦ý¤]¥u¬O¤@ÂI¦Ó¤w¡C ¥u¦³¦b«ü©w¤j«¬ªº°}¦C¡Bª«¥ó©Î¬O¦b¤j¶qªº°j°é¾Þ§@¤¤¤~·|¬Ý¥X®Ä¯q¨Ó¡C 
-   </para>
-   <para>
-    §@°Ñ·Ó«ü©wªº¤è¦¡¬O¦b³Q°Ñ·ÓªºÅܼÆ(ÂÂÅܼÆ)«e¥[¤W­Ó(&amp;) ²Å¸¹¡C ¹³¤U­±ªº¥Ü¨Ò·|³sÄò¥´¥X¨â¥y¬Û¦Pªº¥y¤l: 
-
-    <informalexample>
-     <programlisting role="php">
-&lt;?php
-$foo = 'Bob';              // Assign the value 'Bob' to $foo
-$bar = &amp;$foo;          // Reference $foo via $bar.
-$bar = "My name is $bar";  // Alter $bar...
-echo $foo;                 // $foo is altered too.
-echo $bar;
-?&gt;
-     </programlisting>
-    </informalexample>
-   </para>
-
-   <para>
-    ¦³¤@ÂI«Ü­«­nªº¬O¥u¦³¯u¥¿ªºÅܼƤ~¥i¥H§@¬°ÂÂÅܼƳQ°Ñ·Ó¡C 
-    <informalexample>
-     <programlisting role="php">
-&lt;?php
-$foo = 25;
-$bar = &amp;$foo;      // This is a valid assignment.
-$bar = &amp;(24 * 7);  // Invalid; references an unnamed expression.
-
-function test() {
-   return 25;
-}
-
-$bar = &amp;test();    // Invalid.
-?&gt;
-     </programlisting>
-    </informalexample>
-   </para>
-
-  </sect1>
-
-  <sect1 id="language.variables.predefined">
-   <title>¤w¹w³]¦nªºÅܼÆ</title>
-   
-   <simpara>
-    PHP provides a large number of predefined variables to any script
-    which it runs. Many of these variables, however, cannot be fully
-    documented as they are dependent upon which server is running, the
-    version and setup of the server, and other factors. Some of these
-    variables will not be available when PHP is run on the
-    command-line.
-   </simpara>
-
-   <simpara>
-    Despite these factors, here is a list of predefined variables
-    available under a stock installation of PHP 3 running as a module
-    under a stock installation of <ulink
-    url="&url.apache;">Apache</ulink> 1.3.6.
-   </simpara>
-
-   <simpara>
-    For a list of all predefined variables (and lots of other useful
-    information), please see (and use) <function>phpinfo</function>.
-   </simpara>
-
-   <note>
-    <simpara>
-     This list is neither exhaustive nor intended to be. It is simply
-     a guideline as to what sorts of predefined variables you can
-     expect to have access to in your script.
-    </simpara>
-   </note>
-
-   <sect2 id="language.variables.predefined.apache">
-    <title>Apache variables</title>
-
-    <simpara>
-     These variables are created by the <ulink
-     url="&url.apache;">Apache</ulink> webserver. If you are running
-     another webserver, there is no guarantee that it will provide the
-     same variables; it may omit some, or provide others not listed
-     here. That said, a large number of these variables are accounted
-     for in the <ulink url="&url.cgispec;">CGI 1.1
-     specification</ulink>, so you should be able to expect those.
-    </simpara>
-    <simpara>
-     Note that few, if any, of these will be available (or indeed have
-     any meaning) if running PHP on the command line.
-    </simpara>
-
-    <para>
-     <variablelist>
-      <varlistentry>
-       <term>GATEWAY_INTERFACE</term>
-       <listitem>
-        <simpara>
-         What revision of the CGI specification the server is using;
-         i.e. 'CGI/1.1'.
-        </simpara>
-       </listitem>
-      </varlistentry>
-
-      <varlistentry>
-       <term>SERVER_NAME</term>
-       <listitem>
-        <simpara>
-         The name of the server host under which the current script is
-         executing. If the script is running on a virtual host, this
-         will be the value defined for that virtual host.
-        </simpara>
-       </listitem>
-      </varlistentry>
-
-      <varlistentry>
-       <term>SERVER_SOFTWARE</term>
-       <listitem>
-        <simpara>
-         Server identification string, given in the headers when
-         responding to requests.
-        </simpara>
-       </listitem>
-      </varlistentry>
-
-      <varlistentry>
-       <term>SERVER_PROTOCOL</term>
-       <listitem>
-        <simpara>
-         Name and revision of the information protocol via which the
-         page was requested; i.e. 'HTTP/1.0';
-        </simpara>
-       </listitem>
-      </varlistentry>
-      
-      <varlistentry>
-       <term>REQUEST_METHOD</term>
-       <listitem>
-        <simpara>
-         Which request method was used to access the page; i.e. 'GET',
-         'HEAD', 'POST', 'PUT'.
-        </simpara>
-       </listitem>
-      </varlistentry>
-	  
-      <varlistentry>
-       <term>QUERY_STRING</term>
-       <listitem>
-        <simpara>
-         The query string, if any, via which the page was accessed.
-        </simpara>
-       </listitem>
-      </varlistentry>
-
-      <varlistentry>
-       <term>DOCUMENT_ROOT</term>
-       <listitem>
-        <simpara>
-         The document root directory under which the current script is
-         executing, as defined in the server's configuration file.
-        </simpara>
-       </listitem>
-      </varlistentry>
-
-      <varlistentry>
-       <term>HTTP_ACCEPT</term>
-       <listitem>
-        <simpara>
-         Contents of the <literal>Accept:</literal> header from the
-         current request, if there is one.
-        </simpara>
-       </listitem>
-      </varlistentry>
-
-      <varlistentry>
-       <term>HTTP_ACCEPT_CHARSET</term>
-       <listitem>
-        <simpara>
-         Contents of the <literal>Accept-Charset:</literal> header
-         from the current request, if there is one. Example:
-         'iso-8859-1,*,utf-8'.
-        </simpara>
-       </listitem>
-      </varlistentry>
-
-      <varlistentry>
-       <term>HTTP_ACCEPT_ENCODING</term>
-       <listitem>
-        <simpara>
-         Contents of the <literal>Accept-Encoding:</literal> header
-         from the current request, if there is one. Example: 'gzip'.
-        </simpara>
-       </listitem>
-      </varlistentry>
-      
-      <varlistentry>
-       <term>HTTP_ACCEPT_LANGUAGE</term>
-       <listitem>
-        <simpara>
-         Contents of the <literal>Accept-Language:</literal> header
-         from the current request, if there is one. Example: 'en'.
-        </simpara>
-       </listitem>
-      </varlistentry>
-      
-      <varlistentry>
-       <term>HTTP_CONNECTION</term>
-       <listitem>
-        <simpara>
-         Contents of the <literal>Connection:</literal> header from
-         the current request, if there is one. Example: 'Keep-Alive'.
-        </simpara>
-       </listitem>
-      </varlistentry>
-
-      <varlistentry>
-       <term>HTTP_HOST</term>
-       <listitem>
-        <simpara>
-         Contents of the <literal>Host:</literal> header from the
-         current request, if there is one.
-        </simpara>
-       </listitem>
-      </varlistentry>
-
-      <varlistentry>
-       <term>HTTP_REFERER</term>
-       <listitem>
-        <simpara>
-         The address of the page (if any) which referred the browser
-         to the current page. This is set by the user's browser; not
-         all browsers will set this.
-        </simpara>
-       </listitem>
-      </varlistentry>
-
-      <varlistentry>
-       <term>HTTP_USER_AGENT</term>
-       <listitem>
-        <simpara>
-         Contents of the <literal>User_Agent:</literal> header from
-         the current request, if there is one. This is a string
-         denoting the browser software being used to view the current
-         page; i.e. <computeroutput>Mozilla/4.5 [en] (X11; U; Linux
-         2.2.9 i586)</computeroutput>. Among other things, you can use
-         this value with <function>get_browser</function> to tailor
-         your page's functionality to the capabilities of the user's
-         browser.
-        </simpara>
-       </listitem>
-      </varlistentry>
-
-      <varlistentry>
-       <term>REMOTE_ADDR</term>
-       <listitem>
-        <simpara>
-         The IP address from which the user is viewing the current
-         page.
-        </simpara>
-       </listitem>
-      </varlistentry>
-
-      <varlistentry>
-       <term>REMOTE_PORT</term>
-       <listitem>
-        <simpara>
-         The port being used on the user's machine to communicate with
-         the web server.
-        </simpara>
-       </listitem>
-      </varlistentry>
-
-      <varlistentry>
-       <term>SCRIPT_FILENAME</term>
-       <listitem>
-        <simpara>
-         The absolute pathname of the currently executing script.
-        </simpara>
-       </listitem>
-      </varlistentry>
-
-      <varlistentry>
-       <term>SERVER_ADMIN</term>
-       <listitem>
-        <simpara>
-         The value given to the SERVER_ADMIN (for Apache) directive in
-         the web server configuration file. If the script is running
-         on a virtual host, this will be the value defined for that
-         virtual host.
-        </simpara>
-       </listitem>
-      </varlistentry>
-      
-      <varlistentry>
-       <term>SERVER_PORT</term>
-       <listitem>
-        <simpara>
-         The port on the server machine being used by the web server
-         for communication. For default setups, this will be '80';
-         using SSL, for instance, will change this to whatever your
-         defined secure HTTP port is.
-        </simpara>
-       </listitem>
-      </varlistentry>
-
-      <varlistentry>
-       <term>SERVER_SIGNATURE</term>
-       <listitem>
-        <simpara>
-         String containing the server version and virtual host name
-         which are added to server-generated pages, if enabled.
-        </simpara>
-       </listitem>
-      </varlistentry>
-
-      <varlistentry>
-       <term>PATH_TRANSLATED</term>
-       <listitem>
-        <simpara>
-         Filesystem- (not document root-) based path to the current
-         script, after the server has done any virtual-to-real
-         mapping.
-        </simpara>
-       </listitem>
-      </varlistentry>
-
-      <varlistentry>
-       <term>SCRIPT_NAME</term>
-       <listitem>
-        <simpara>
-         Contains the current script's path. This is useful for pages
-         which need to point to themselves.
-        </simpara>
-       </listitem>
-      </varlistentry>
-
-      <varlistentry>
-       <term>REQUEST_URI</term>
-       <listitem>
-        <simpara>
-         The URI which was given in order to access this page; for
-         instance, '/index.html'.
-        </simpara>
-       </listitem>
-      </varlistentry>
-     </variablelist>
-    </para>
-
-   </sect2>
-
-   <sect2 id="language.variables.predefined.environment">
-    <title>Environment variables</title>
-
-    <simpara>
-     These variables are imported into PHP's global namespace from the
-     environment under which the PHP parser is running. Many are
-     provided by the shell under which PHP is running and different
-     systems are likely running different kinds of shells, a
-     definitive list is impossible. Please see your shell's
-     documentation for a list of defined environment variables.
-    </simpara>
-    <simpara>
-     Other environment variables include the CGI variables, placed
-     there regardless of whether PHP is running as a server module or
-     CGI processor.
-    </simpara>
-	
-   </sect2>
-
-   <sect2 id="language.variables.predefined.php">
-    <title>PHP variables</title>
-    
-    <simpara>
-     These variables are created by PHP itself. The
-     <varname>$HTTP_*_VARS</varname> variables are available only if
-     the <link linkend="ini.track-vars">track_vars</link>
-     configuration is turned on. When enabled, the variables are
-     always set, even if they are empty arrays. This prevents
-     a malicious user from spoofing these variables.
-    </simpara>
-
-    <note>
-     <para>
-      As of PHP 4.0.3, <link
-      linkend="ini.track-vars">track_vars</link> is always turned on,
-      regardless of the configuration file setting.
-     </para>
-    </note>
-
-    <para>
-     If the <link
-     linkend="ini.register-globals">register_globals</link> directive
-     is set, then these variables will also be made available in the
-     global scope of the script; i.e., separate from the
-     <varname>$HTTP_*_VARS</varname> arrays. This feature should be
-     used with care, and turned off if possible; while the
-     <varname>$HTTP_*_VARS</varname> variables are safe, the bare
-     global equivalents can be overwritten by user input, with
-     possibly malicious intent. If you cannot turn off <link
-     linkend="ini.register-globals">register_globals</link>, you must
-     take whatever steps are necessary to ensure that the data you are
-     using is safe.
-    </para>
-    
-    <para>
-     <variablelist>
-      <varlistentry>
-       <term>argv</term>
-       <listitem>
-        <simpara>
-         Array of arguments passed to the script. When the script is
-         run on the command line, this gives C-style access to the
-         command line parameters. When called via the GET method, this
-         will contain the query string.
-        </simpara>
-       </listitem>
-      </varlistentry>
-
-      <varlistentry>
-       <term>argc</term>
-       <listitem>
-        <simpara>
-         Contains the number of command line parameters passed to the
-         script (if run on the command line).
-        </simpara>
-       </listitem>
-      </varlistentry>
-
-      <varlistentry>
-       <term>PHP_SELF</term>
-       <listitem>
-        <simpara>
-         The filename of the currently executing script, relative to
-         the document root. If PHP is running as a command-line
-         processor, this variable is not available.
-        </simpara>
-       </listitem>
-      </varlistentry>
-	  
-      <varlistentry>
-       <term>HTTP_COOKIE_VARS</term>
-       <listitem>
-        <simpara>
-         An associative array of variables passed to the current
-         script via HTTP cookies. 
-        </simpara>
-       </listitem>
-      </varlistentry>
-      
-      <varlistentry>
-       <term>HTTP_GET_VARS</term>
-       <listitem>
-        <simpara>
-         An associative array of variables passed to the current
-         script via the HTTP GET method.
-        </simpara>
-       </listitem>
-      </varlistentry>
-      
-      <varlistentry>
-       <term>HTTP_POST_VARS</term>
-       <listitem>
-        <simpara>
-         An associative array of variables passed to the current
-         script via the HTTP POST method.
-        </simpara>
-       </listitem>
-      </varlistentry>
-    
-      <varlistentry>
-       <term>HTTP_POST_FILES</term>
-       <listitem>
-        <simpara>
-         An associative array of variables containing information
-         about files uploaded via the HTTP POST method. See <link
-         linkend="features.file-upload.post-method">POST method
-         uploads</link> for information on the contents of
-         <varname>$HTTP_POST_FILES</varname>.
-        </simpara>
-        <para>
-         <varname>$HTTP_POST_FILES</varname> is available only in PHP
-         4.0.0 and later.
-        </para>
-       </listitem>
-      </varlistentry>
-  
-    <varlistentry>
-       <term>HTTP_ENV_VARS</term>
-       <listitem>
-        <simpara>
-         An associative array of variables passed to the current
-         script via the parent environment. 
-        </simpara>
-       </listitem>
-      </varlistentry>
-
-    <varlistentry>
-       <term>HTTP_SERVER_VARS</term>
-       <listitem>
-        <simpara>
-         An associative array of variables passed to the current
-         script from the HTTP server. These variables are analogous to
-         the Apache variables described above.
-        </simpara>
-       </listitem>
-      </varlistentry>
-     </variablelist>
-    </para>
-	
-   </sect2>
-
-  </sect1>
-
-
-  <sect1 id="language.variables.scope">
-   <title>Åܼƪº¦³®Ä½d³ò</title>
-
-   <simpara>
-    Åܼƪº¦³®Ä½d³ò¬O«ü¥u¦³¦b¸Ó½d³ò¤§¤º¹q¸£¤~ª¾¹D¦³³o¼Ë¤@­ÓÅܼƦs¦b¨Ã¥i¦s¨ú¨ä©ÒÀxªº­È¡C ¤j«eÃD¬O©Ò¦³ªº PHP ÅܼƳ£¥u¦³³æ¤@ªº¦³®Ä½d³ò¡C ³o¦³®Ä½d³ò¦ù®i¨ì³Q include() ©M require() ªº¤å¥ó¤¤¡C ½Ð¬Ý¥Ü½d: 
-
-   </simpara>
-   <informalexample>
-    <programlisting role="php">
-$a = 1;
-include "b.inc";
-    </programlisting>
-   </informalexample>
-   <simpara>
-   ¦b b.inc ¤å¥ó¤¤ $a Åܼƪº­È¤]¬O 1 ¡C µM¦Ó¡A ¦b¨ç¼Æ¤¤ªºÅܼƨ䦳®Ä½d³ò«h§½­­¦b¨ç¼Æªº¥»Å餧¤¤¡C ¸õ¶i¨ç¼Æ®É¹q¸£¤£·|ª¾¹D¦b¨ç¼Æ³Q½Õ¥Î¤§«e¦³¤°»òÅܼƴ¿³Q©w¸q¡A ¦Ó©Ò¦³¦b¨ç¼Æ°õ¦æ®É¤~©w¸qªºÅܼƦb¸õ¥X¨ç¼Æ«á³£·|®ø¥¢¡C ¦p¤U¨Ò: 
-   </simpara>
-    
-   <informalexample>
-    <programlisting role="php"> 
-$a = 1; /* global scope */ 
-
-Function Test () { 
-    echo $a; /* reference to local scope variable */ 
-} 
-
-Test ();
-    </programlisting>
-   </informalexample>
-
-   <simpara>
-    ¸Óµ{¦¡¨Ã¤£·|¥´¥X¥ô¦ó­È¦]¬°¦b echo $a ³o¤@«ü¥O¤¤¡A $a ªº¦³®Ä½d³ò¥u¬O¦b¨ç¼Æ¤§¤¤¡A¦ý¦b¨ç¼Æ·í¤¤¨Ã¨S¦³©w¸q $a ªº­È¡F ¥t¤@¤è­±¦b¨ç¼Æ¥~ªº $a ªº¦³®Ä½d³ò¨Ã¤£·|¦ù®i¨ì¨ç¼ÆùØ¥h¡C ¦p§A¬O C µ{¦¡­ûªº¸Ü½Ð¯d·N³oºØ¦³®Ä½d³òªº©wªk©M C ¤£¤@¼Ë¡G ¦b C ·í¤¤©Ò¦³¥Dµ{¦¡¤¤ªºÅܼƳ£¬O¥þ°ìÅܼơC (°£«D¦b¨ç¼Æ¤¤¥t¥~«ü©w¡C) ¦]¬° C ªº¤è¦¡·|¤£¤p¤ß¦b¨ç¼Æ¤¤§ï°Ê¤F¥~³¡ÅܼơA ©Ò¥H¦b PHP ¤§¤¤¦³¦p·Q¦s¨ú¥~³¡Åܼƪº¸Ü´N¥²¶·«Å§i¤@­Ó¥þ°ìÅܼơC ¥Ü½d¦p¤U:
-
-   </simpara>
-
-   <informalexample>
-    <programlisting role="php">
-$a = 1;
-$b = 2;
-
-Function Sum () {
-    global $a, $b;
-
-    $b = $a + $b;
-} 
-
-Sum ();
-echo $b;
-    </programlisting>
-   </informalexample>
-
-   <simpara>
-¤W­±ªº¨Ò¤l¤~·|¦L¥X "3"¡C ¦b¨ç¼Æ¤¤«Å§i $a¡B$b ¬°¥þ°ìÅܼƤ§«á´N¥i¥H¦s¨ú¦b¨ç¼Æ¥~­±ªºÅܼơC ¤@­Ó¨ç¼Æ¥i¥H«Å§i¥ô·N¦h­Ó¥þ°ìÅܼơC 
-   </simpara>
-
-   <simpara>
-    ¥t¥~¤@­Ó¦s¨ú¥~³¡Åܼƪº¤èªk¬O½Õ¥Î PHP ¤º¸mªº $GLOBALS[] °}¦C¡C ²{¦b§â«e­±ªº¨Ò¤l§ï¼g¤@¤U:    </simpara>
-
-   <informalexample>
-    <programlisting role="php">
-$a = 1;
-$b = 2;
-
-Function Sum () {
-    $GLOBALS["b"] = $GLOBALS["a"] + $GLOBALS["b"];
-} 
-
-Sum ();
-echo $b;
-    </programlisting>
-   </informalexample>
-
-   <simpara>
-$GLOBALS °}¦C¬O¤@­ÓÃöÁp¦r¯Á¤Þ¦¡°}¦C¡A Åܼƪº¦W¦r·|§@¬°¦b¦s¨ú¸Ó°}¦Cªº¯Á¤Þ¡C    </simpara>
-
-   <simpara>
-¥t¤@­Ó­«­nªºÅܼƦ³®Ä½d³òªº·§©À¬O³Q«Å§i¦¨ static Ãþ«¬(ÀRºA)ªºÅܼơC ÀRºAÅܼƥu¦b¨ç¼Æ¤§¤¤¥X²{¡A ¤£¹L¦b¸õ¥X¨ç¼Æ¤§«á¥¦­Ìªº­È¨Ã¤£·|®ø¥¢¡C ¦Ò¼{¤U­±ªº±¡ªp:    </simpara>
-
-   <informalexample>
-    <programlisting role="php">
-Function Test () {
-    $a = 0;
-    echo $a;
-    $a++;
-}
-    </programlisting>
-   </informalexample>
-
-   <simpara>
-¤W­±ªº¨ç¼Æ®Ú¥»°_¤£¤F§@¥Î¦]¬°¨C¦¸¶i¤J¨ç¼Æ«á $a ³£·|³Q­«·s«ü©w¬° "0"¡E $a++ ³o¤@¥y«ü¥O¤@ÂI¥Î¤]¨S¦³¦]¬°¨C¦¸¸õ¥X¨ç¼Æ®É $a ´N®ø¥¢¤F¡C ¬°¤F¥O¨ç¼Æ¦¨¬°¦³¥Îªº­p¼Æ¾¹¡A ¥²¶·§â $a «Å§i¬° static:
-
-   </simpara>
-
-   <informalexample>
-    <programlisting role="php">
-Function Test () {
-    static $a = 0;
-    echo $a;
-    $a++;
-}
-    </programlisting>
-   </informalexample>
-
-   <simpara>
-²{¦b test() ¨ç¼Æ·|¦L¥X $a ªº­È¨Ã§â­È¥¦¥[ 1¡C    </simpara>
-
-   <simpara>
-   ÀRºAÅܼƤ]¥i¥H¥Î¨Ó½s¼g»¼Âk¨ç¼Æ recursive function¡C ³oÃþ¨ç¼Æ·|½Õ¥Î¦Û¤v¡C ¼g³oÃþ¨ç¼Æ®É­nÁ×§KµL­­´`Àô¦a½Õ¥Î¡C §A¤@©w­n¦³¿ìªk§â»¼Âk²×¤î¡C ¤U¨Ò¥Î $count Åܼƨӭp¼Æ¡A ·í¥¦¼Æ¨ì 10 ªº®É­Ô´N¸õ¥X¨ç¼Æ: 
-
-   </simpara>
-
-   <informalexample>
-    <programlisting role="php">
-Function Test () {
-    static $count = 0;
-
-    $count++;
-    echo $count;
-    if ($count &lt; 10) {
-        Test ();
-    }
-    $count--;
-}
-    </programlisting>
-   </informalexample>
-
-  </sect1>
-
-  <sect1 id="language.variables.variable">
-   <title>¥ÎÅܼƨӽեÎÅܼÆ</title>
-
-   <simpara>
-    ¦³ªº±¡ÒX¤U¡A ¥Î¤@­ÓÅܼƨÓÀx¦s¥t¤@­ÓÅܼƪº¦W¦r·|¥O½sµ{§ó¤è«K¡C ¦]¬°³o¼Ë¤@¨Ó¥i¥H°ÊºA¦a½Õ¥ÎÅܼơC ¤@­Ó¥¿±`ªºÅܼƫŧi¬O³o¼Ëªº: 
-   </simpara>
-
-   <informalexample>
-    <programlisting role="php">
-$a = "hello";
-    </programlisting>
-   </informalexample>
-
-   <simpara>
-¦Ó¤@­ÓÅܼƪºÅܼƫh§â¦s¦b¨ä¤¤ªº­È·í°µ¬O¥t¤@­ÓÅܼƪº¦W¦r¡C ¦b¤W¨Òªº $a ¤§«e¥Î¨â '$' ¸¹ªº¸Ü¡A hello´N·|³Q·í¦¨¬O¥t¤@­ÓÅܼƪº¦W¦r¡G 
-
-   </simpara>
-
-   <informalexample>
-    <programlisting role="php">
-$$a = "world";
-    </programlisting>
-   </informalexample>
-
-   <simpara>
-¨ì³oùج°¤î¡A ¤@¦@«Å§i¤F¨â­ÓÅܼơA ¤@­Ó¬O $a¡A ¥t¤@­Ó¬O $hello¡C ¬O¥H¤U­±ªº«ü¥O¡G 
-
-   </simpara>
-
-   <informalexample>
-    <programlisting role="php">
-echo "$a ${$a}";
-    </programlisting>
-   </informalexample>
-
-   <simpara>
-©Ò¦L¥X¨Óªºµ²ªG©M³o¤@¥y 
-
-   </simpara>
-
-   <informalexample>
-    <programlisting>
-echo "$a $hello";
-    </programlisting>
-   </informalexample>
-
-   <simpara>
-ªºµ²ªG¬O¤@¼Ëªº¡G hello world. 
-
-   </simpara>
-
-   <simpara>
-¦b¥ÎÅܼƪºÅܼƳoªk¤l¨Ó¦s¨ú°}¦Cªº¸Ü¡A ­n¯d·N $$a[1] ¦³¨â­Ó·N«ä¡G ¥i¥H¬O«ü $a[1] ¬O¤@­ÓÅܼƪº¦WºÙ¡B¤]¥i¥H«ü $$a ¬O¤@­ÓÅܼƦWºÙ¦Ó [1] ¬O¸ÓÅܼƤ¤¤¸¯Àªº¯Á¤Þ ¸¹¡C ¬°¤F©ú½T§i¶D¹q¸£§Aªº·N¹Ï¡A ¥Î ${$a[1]} ¥Nªí²Ä¤@­Ó·N«ä¡B ${$a}[1] ¥Nªí²Ä¤G­Ó¡C 
-   </simpara>
-  
-  </sect1>
-
-  <sect1 id="language.variables.external">
-   <title>¥~³¡ÅܼÆ</title>
-
-   <sect2 id="language.variables.external.form">
-    <title>HTML ªí (GET and POST)
-</title>
-
-    <simpara>
-·íªí³æ³Q´£¥æµ¹ PHP µ{¦¡®É¡A ©Ò¦³¦bªí³æ¤¤ªºÅܼƳ£¦Û°Êµ¹¤À¹j¶}¨Ã¶Çµ¹µ{¦¡¡C °²¦p¦³¤@±i¦p¤U¨Òªºªí³æ: 
-If the <link linkend="ini.track-vars">track_vars</link>
-     configuration option is turned on, then these variables will be
-     located in the associative arrays
-     <varname>$HTTP_POST_VARS</varname>,
-     <varname>$HTTP_GET_VARS</varname>, and/or
-     <varname>$HTTP_POST_FILES</varname>, according to the
-     source of the variable in question.
-    </simpara>
-
-    <para>
-     For more information on these variables, please read <link
-     linkend="language.variables.predefined">Predefined
-     variables</link>.
-    </para>
-
-    <para>
-     <example>
-      <title>²³æªºªí³æÅܼÆ</title>
-      <programlisting role="php">
-&lt;form action="foo.php" method="post">
-    Name: &lt;input type="text" name="username">&lt;br>
-    &lt;input type="submit">
-&lt;/form>
-      </programlisting>
-     </example>
-    </para>
-
-    <para>
-·í«ö¤U SUBMIT «á¡A PHP ·|¦Û°Ê«ü©wÅÜ¼Æ $name ¡A ¨ä¤¤·|Àx¦sªí³æ¤¤ Name: ³o¤@Äæ©Ò§tªº­È¡C 
-PHP ¦³­Ó¥s track_vars ªº¥i½Õ¶µ¡A ¦b¶}ªºª¬ºA¤U¥Î POST ©Î GET ¤èªk´£¥æªºªí³æÄæ¦ì¥i¥H¦b¬ÛÀ³ªº $HTTP_POST_VARS ©Î $HTTP_GET_VARS °}¦C¤¤§ä¨ì¡C ­n¥´¶}³o­Ó¥\¯à¥i¥H§ï track_vars ³o­Ó°Ñ¼Æ©Î¨Ï¥Î <?php_track_vars?> «ü¥O¡C 
-    </para>
-
-    <simpara>
-PHP ÁÙ¥i¥H¤À¸Ñªí³æ¤¤°}¦C«¬ºAªºÅܼơC §A¥i§Q¥Î³o¤@¯S©Ê§â¬ÛÃöªºÅܼƤÀ²Õ©ÎªÌ¬OÀx¦s®e³\¦h¶µ¿ï¾Üªºªí³æÄæ¦ì:
-
-    </simpara>
-
-    <para>
-     <example>
-      <title>½ÆÂø¤@¨Çªºªí³æ
-</title>
-      <programlisting role="php">
-&lt;form action="array.php" method="post">
-    Name: &lt;input type="text" name="personal[name]">&lt;br>
-    Email: &lt;input type="text" name="personal[email]">&lt;br>
-    Beer: &lt;br>
-    &lt;select multiple name="beer[]">
-        &lt;option value="warthog">Warthog
-        &lt;option value="guinness">Guinness
-        &lt;option value="stuttgarter">Stuttgarter Schwabenbr&auml;u
-        &lt;/select>
-    &lt;input type="submit">
-&lt;/form>
-      </programlisting>
-     </example>
-    </para>
-
-    <para>
-     In PHP 3, the array form variable usage is limited to
-     single-dimensional arrays. In PHP 4, no such restriction applies.
-    </para>
-
-    <sect3 id="language.variables.external.form.submit">
-     <title>¥Î IMAGE SUBMIT ªºÅܼƦW</title>
-
-     <simpara>
-      ´£¥æªí³æ®É¡A ¥i¥H¤£¥Î¼Ð·Çªº«ö¶s¦Ó¥Î¹Ï®×¥N´À¡C ¥yªk¦p¤U:</simpara>
-
-     <informalexample>
-      <programlisting role="php">
-&lt;input type=image src="image.gif" name="sub">
-      </programlisting>
-     </informalexample>
-
-     <simpara>
-·í¨Ï¥ÎªÌ«ö¦b¸Ó¹Ï®×¤W®É¡A ¶Ç¥hµ¹¦øªA¾¹ªºªí³æ¸ê®Æ·|¦³¨â­Ó·sªº­È sub_x ©M sub_y¡A ¤À§O¬O¨Ï¥ÎªÌ«ö¦b¹Ï®×¤Wªº®y¼Ð¡C ªí³æ¦Ñ¤â­Ì¥i¯à·|ª¾¹D¨ä¹ê°eµ¹¦øªA¾¹ªºªºÄæ¦ì¬O sub.x ©M sub.y¡A ¤£¹L PHP ¦Û°Ê§â¥y¸¹Åܦ¨¤F©³½u¸¹¡C 
-
-     </simpara>
-    </sect3>
-
-   </sect2>
-
-   <sect2 id="language.variables.external.cookies">
-    <title>HTTP cookies (²¢»æ ?)
-</title>
-
-    <simpara>
-PHP ¤ä«ù¥Ñ <ulink
-     url="&spec.cookies;">Netscape's Spec</ulink>©Ò©w¸qªº HTTP cookies¡C Cookies ¬O§â¸ê®Æ¦s¨ì«È¤á¾÷¤Wªº¤@ºØ¤èªk¡C ³o¨Ç¸ê®Æ¥i¥H¥Î¨Ó¿ë§O¥Î¤áªº¨­¥÷¡C ­n³]©w COOKIES ¥i¥Î SetCookie() ¨ç¼Æ¡C ¦]¬° COOKIES ¬O HTTP HEADER ¼ÐÀYªº¤@³¡¥÷©Ò¥H°e¥X COOKIE ªº©R¥O¥²¶·§â­¶­±¤º®e¿é¥Xµ¹ÂsÄý¾¹¤§«e°õ¦æ¡C ³o­­¨î©M¨Ï¥Î Header() ¨ç¼Æªº­­¨î¬O¤@¼Ëªº¡C ¦Ü©ó±qÂsÄý¾¹°e¦^¨Óªº COOKIES «h¹³ GET¡B POST ¤èªk¤@¼Ë·|¦Û°Ê¦s¦bÅܼÆùØ¡C 
-</simpara>
-
-    <simpara>
-¦p·Q¥Î¤@­Ó COOKIE ¦s¦h¹L¤@­Ó­È¡A ¥u»Ý¦b COOKIE ¦W¦r«á¥[¤W []¡C ¥Ü½d: 
-    </simpara>
-
-    <informalexample>
-     <programlisting role="php">
-SetCookie ("MyCookie[]", "Testing", time()+3600);
-     </programlisting>
-    </informalexample>
-
-    <simpara>
-ª`·N°£«D¸ô®|©Îºô°ì¦W¦r¤£¤@¼Ë¡A ¤£µM§A°e¥Xªº COOKIE ·|¨ú¥N¤§«e¦P¦Wªº COOKIE¡C ¦]¦¹¦b½s¼gÁʪ«Äxµ{¦¡®É¦³®É­n¥[¤@­Ó­p¼Æ¾¹¡C ´N¹³³o¼Ë¡G 
-
-    </simpara>
-
-    <example>
-     <title>SetCookie ¥Ü½d</title>
-     <programlisting role="php">
-$Count++;
-SetCookie ("Count", $Count, time()+3600);
-SetCookie ("Cart[$Count]", $item, time()+3600);
-     </programlisting>
-    </example>
-
-   </sect2>
-
-   <sect2 id="language.variables.external.environment">
-    <title>§@·~Àô¹ÒÅܼÆ</title>
-
-    <para>
-PHP ·|¦Û°Ê§âÃö©ó§@·~Àô¹Òªº¸ê®Æ¾ã²z¦¨¤@¯ëªºÅܼƨѵ{¦¡¨ú¥Î¡C 
-
-     <informalexample>
-      <programlisting role="php">
-echo $HOME;  /* Shows the HOME environment variable, if set. */
-      </programlisting>
-     </informalexample>
-    </para>
-
-    <para>
-¤p¤ß°_¨£¡A Ū¨úÀô¹ÒÅܼƮɳ̦n¥Î      <function>getenv</function>¨ç¼Æ¡A ³o¬O¦]¬° PHP ¤@¼Ë¬°ªí³æ¡BCOOKIE µ¥µ¥¦Û°Ê©w¸qÅܼơA ¦³®É­Ô·|¤£¤p¤ß¥Î¤F¬Û¦Pªº¦W¦r¡A ¨ì®É§AŪ¨úªº¥i¯à¨Ã¤£¬O¯u¥¿ªºÀô¹ÒÅܼơC §ï°ÊÀô¹ÒÅܼƫh¥i¥Î 
-     <function>putenv</function>¨ç¼Æ¡C 
-    </para>
-   </sect2>
-
-   <sect2 id="language.variables.external.dot-in-names">
-    <title>±a '.' ¸¹ªºÅܼÆ</title>
-
-    <para>
-°ò¥»¤W PHP ¤£·|¾Õ§ïÅܼƪº¦W¦r¡A ¦ý¥Ñ©ó PHP ¤§¤¤ '.' ¸¹¦³¯S§Oªº·N«ä(¦ê±µ¤å¥y)¤£¥i¥H§@¬°ÅܼƦW¦r¡A ©Ò¥H±a '.' ¸¹ªºÅܼƦWºÙ¤¤ªº '.' ·|Åܦ¨ '_': 
-     <programlisting role="php">
-$varname.ext;  /* invalid variable name */
-     </programlisting>
-¤W­±½d¨Ò¤¤ PHP ·|²z¸Ñ¬°¤@­ÓÅÜ¼Æ $varname¡A «á­±¸òµÛ¦A¦ê±µ¥t¤@­ÓÅÜ¼Æ $ext¡C ÅãµM PHP ²z¸Ñ¿ù¤F¥»¨Óªº¥Î·N¡C 
-    </para>
-
-   </sect2>
-
-   <sect2 id="language.variables.determining-type-of">
-    <title>¬d¸ßÅܼƪº§ÎºA
-</title>
-
-    <para>
-     ¥Ñ©ó PHP ·|¨Ì¤º®e¦Û°Ê³]©wÅܼƪº§ÎºA¡A ¦³®É­Ô«ÜÃø¤@²´¬Ý¥X¤@­ÓÅܼƨ쩳¨ú¥Î¤F¨º¤@ºØ§ÎºA¡C ¬°¤FÅý¥ÎªÌ¨ú±o³oÃþ¸ê°T¡A PHP ¦³¦n¦h­Ó¨ç¼Æ¥i¥H½Õ¥Î¡G 
-     <function>gettype</function>, <function>is_long</function>,
-     <function>is_double</function>, <function>is_string</function>,
-     <function>is_array</function>,©M
-     <function>is_object</function>.
-    </para>
-   </sect2>
-
-  </sect1>
-     
- </chapter>
- 
- <!-- Keep this comment at the end of the file
- Local variables:
- mode: sgml
- sgml-omittag:t
- sgml-shorttag:t
- sgml-minimize-attributes:nil
- sgml-always-quote-attributes:t
- sgml-indent-step:1
- sgml-indent-data:t
-indent-tabs-mode:nil
- sgml-parent-document:nil
- sgml-default-dtd-file:"../../manual.ced"
- sgml-exposed-tags:nil
- sgml-local-catalogs:nil
- sgml-local-ecat-files:nil
- End:
- -->
+<?xml version="1.0" encoding="big5"?>
+<!-- $Revision: 1.5 $ -->
+ <chapter id="language.variables">
+  <title>¦UÃþÅܼÆ</title>
+  
+  <sect1 id="language.variables.basics">
+   <title>°ò¥»ª¾ÃÑ</title>
+
+   <simpara>
+    ©Ò¦³ PHP ªºÅܼƳ£¬O¥H "$" ¬°¶}ºÝ¡A«á¥[ÅܼƦW©Ò²Õ¦¨ªº¡CÅܼƦWºÙ¬O¦³¤j¤p¼g¤§¤Àªº¡C
+   </simpara>
+
+   <para>
+    PHP ªºÅܼƦWºÙ©M¨ä¥L¼ÐÅÒ¦³µÛ¬Û¦Pªº³W«h¡C¤@­Ó¦³®ÄªºÅܼƬO¥Ñ­^¤å¦r¥À©Î©³½u¶}©l¡A¸òµÛ¬O¥ô·Nªøµuªº¦r¥À¡B¼Æ¦r©Î©³½u¡C«ö¥¿³W¹Bºâ¦¡¡A¥¦¥i¥Hªí¹F¬°¡G'[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*'
+   </para>
+   
+   <note>
+    <simpara>
+    ¦r¥À¬° a-z¡AA-Z¡A¦Ó ASCII ¦r²Å«h±q 127 ¦Ü 255¡q0x7f-0xff¡r¡C 
+    </simpara>
+   </note>
+
+   <para>
+    <informalexample>
+     <programlisting role="php"> 
+<![CDATA[
+<?php
+$var = "Bob";
+$Var = "Joe";
+echo "$var, $Var";      // outputs "Bob, Joe"
+
+$4site = 'not yet';     // invalid; starts with a number
+$_4site = 'not yet';    // valid; starts with an underscore
+$täyte = 'mansikka';    // valid; 'ä' is ASCII 228.
+?>
+]]>
+     </programlisting>
+    </informalexample>
+   </para>
+
+   <para>
+    PHP 3 ¤¤¡AÅܼÆÁ`¬O¥Ñ­È«ü¬£¡C¤]´N¬O»¡¡A·í±z±N¤@­Ó¹Bºâ¦¡ªº­È«ü¬£µ¹¤@­ÓÅܼƮɡA¾ã­Ó­ì©l¹Bºâ¦¡ªº­È±N·|½Æ»s¨ì¥ØªºÅܼơC¨Ò¦p¡A·í±N¤@­ÓÅܼƪº­È«ü¬£µ¹¥t¤@­ÓÅܼƤ§«á¡A§ó§ï·í¤¤ªº¥ô¦ó¤@­ÓÅܼƪº­È¨Ã¤£·|¼vÅT¨ì¥t¤@­ÓÅܼƪº­È¡C·Q­nª¾¹D§ó¦h³oÃþªº«ü¬£¡A½Ð°Ñ¾\<link linkend="language.expressions">¹Bºâ¦¡</link>³o¤@³¹¡C
+   </para>
+   <para>
+    PHP 4 «h´£¨Ñ¤F¥t¤@ºØ«ü¬£ÅܼƭȪº¤èªk¡G<link linkend="language.references">¶Ç§}«ü¬£</link>¡A§Y·sÅܼƥu¬O°Ñ·Ó­ì¨ÓÅܼƤ¤ªº­È¡A©Î»¡·sªºÅܼƦ¨¬°­ì¨ÓÅܼƪº§O¦W¡C¦¹®É¡A§ó§ï¨â­ÓÅܼƤ¤¥ô¦ó¤@­Óªº­È³£·|¦P®É§ó§ï¥t¤@­Óªº­È¡C¥Ñ©ó¨S¦³°õ¦æ¹ê»Úªº½Æ»s¤u§@¡A«ü¬£ªº¾Þ§@¤]¦]¦¹§ó¥[§Ö±¶¡C¤£¹L¡A¥u¦³¦bºò±Kªº°j°é©Î«ü¬£¤j¶qªº<link linkend="language.types.array">°}¦C</link>©Î<link linkend="language.types.object">ª«¥ó</link>®É¤~·|¹îı³t«×ªº´£¤É¡C
+   </para>
+   <para>
+    ¨Ï¥Î¶Ç§}«ü¬£¡A¥u¶·¦b³Q°Ñ·Óªº­ìÅܼƫe¥[¤W¤@­Ó (&amp;) ªº²Å¸¹¡C¨Ò¦p¡A¤U¦Cµ{¦¡½X¦b¨Ï¥Î¶Ç§}«ü¬£«á¿é¥X 'My name is Bob' ¨â¦¸¡C
+    
+    <informalexample>
+     <programlisting role="php">
+<![CDATA[
+<?php
+$foo = 'Bob';              // Assign the value 'Bob' to $foo
+$bar = &$foo;              // Reference $foo via $bar.
+$bar = "My name is $bar";  // Alter $bar...
+echo $bar;
+echo $foo;                 // $foo is altered too.
+?>
+]]>
+     </programlisting>
+    </informalexample>
+   </para>
+
+   <para>
+    »Ý­nª`·Nªº¬O¥u¦³¯u¥¿©R¦WªºÅܼƤ~¥i¥H¥Î¨Ó¶i¦æ¶Ç§}«ü¬£¡C
+    <informalexample>
+     <programlisting role="php">
+<![CDATA[
+<?php
+$foo = 25;
+$bar = &$foo;      // This is a valid assignment.
+$bar = &(24 * 7);  // Invalid; references an unnamed expression.
+
+function test()
+{
+   return 25;
+}
+
+$bar = &test();    // Invalid.
+?>
+]]>
+     </programlisting>
+    </informalexample>
+   </para>
+  </sect1>
+
+  <sect1 id="language.variables.predefined">
+   <title>¹w³]ªºÅܼÆ</title>
+   
+   <simpara>
+    PHP ¬°¥¦°õ¦æªºµ{¦¡´£¨Ñ¤F¤j¶qªº¹w³]ÅܼơCµM¦Ó¡A¥Ñ¤_¦³³\¦hÅܼƦ]¨Ì¿à¨ä©Ò°õ¦æªº¦øªA¾¹ºØÃþ¡Bª©¥»¡B¦w¸Ëµ¥±¡ªp¦Ó©w¡A¦]¦¹Ãø¥H¦³§¹¾ãªº³Q°O¸ü¤U¨Ó¡C§ó¦³¤@¨ÇÅܼƦb<link linkend="features.commandline">«ü¥O¦æ</link>ªº¼Ò¦¡¹B¦æ®É¬O¤£¯à¨Ï¥Îªº¡C¦³Ãö³o¨ÇÅܼƪº¦Cªí¡A½Ð°Ñ¦Ò<link linkend="reserved.variables">«O¯dªº¥ý«e©w¸qÅܼÆ</link>¤@¸`¡C
+   </simpara>
+
+   <warning>
+    <simpara>
+    PHP 4.2.0 ¥H«áªºª©¥»¡A<link linkend="ini.register-globals">register_globals</link> «ü¥Oªº¹w³]­È¬O <emphasis>off</emphasis>¡C³o¬O¤@­Ó­«¤jªº§ïÅÜ¡C±N register_globals ªº­È¹w³]¬° <emphasis>off</emphasis> ·|¼vÅT¨ì¹w³]ÅܼƦb¥þ°ì½d³ò¤ºªº¦³®Ä©Ê¡C¨Ò¦p¡A­n±o¨ì <varname>DOCUMENT_ROOT</varname> ªº­È¡AÀ³¨Ï¥Î <varname>$_SERVER['DOCUMENT_ROOT']</varname> ¦Ó¤£¬O <varname>$DOCUMENT_ROOT</varname>¡B¨Ï¥Î <varname>$_GET['id']</varname> ¥H¨ú±o URL <literal>http://www.example.com/test.php?id=3</literal> ¤¤ id ªº­È¡A¦Ó¤£¬O¥Î <varname>$id</varname>¡B©Î¨Ï¥Î <varname>$_ENV['HOME']</varname> ¨Ó¨ú¥N <varname>$HOME</varname>¡C
+    </simpara>
+    <simpara>
+    §ó¦h»P¦¹§ó§ï¬ÛÃöªº¸ê®Æ¥i¦b <link linkend="ini.register-globals">register_globals</link> ªº³]¸m¤@¸`¡B<link linkend="security.registerglobals">¨Ï¥Î Register Globals</link> ¤¤ªº¦w¥þ³¹¡A©Î¦b <ulink url="&url.php.release4.1.0;">4.1.0</ulink> ¤Î <ulink url="&url.php.release4.2.0;">4.2.0</ulink> ªºµo¦æ³q§i¤¤¨ú±o¡C
+    </simpara>
+    <simpara>
+    §Ú­Ì«ØÄ³±z¨Ï¥Î PHP ´£¨Ñªº«O¯d¹w³]ÅܼơA¦p <link linkend="language.variables.superglobals">superglobal ³¯¦C</link>¡C
+    </simpara>
+   </warning>
+
+   <simpara>
+    ¦Û 4.1.0 ª©¥»°_¡APHP ÃB¥~´£¨Ñ¤F¤@®M¹w³]°}¦C¡A·í¤¤¥]§t¤F¨Ó¦Û¦øªA¾¹¡q¦p¾A¥Î¡r¡BÀô¹Ò¡B¤Î¨Ï¥ÎªÌ¿é¤JªºÅܼơC³o¨Ç·s³¯¦C¤ñ¸û¯S§O¡A¦]¦¹¥¦­Ì·|¦Û°Ê¦a³]¬°¥þ°ì¡A§Y¥i¥H¦b©Ò¦³½d³ò¤º¨Ï¥Î¡C¥¿¦]¦p¦¹¡A¥¦­Ì¤]³QºÙ¬° 'autoglobals' ©Î 'superglobals'¡C¡qPHP ©|¥¼¦³¨Ï¥ÎªÌ¦Û¦æ©w¸q superglobals ªº¥\¯à¡C¡r§Ú­Ì±N¦b¤U­±¦C¥X superglobals¡A¦ý­nª¾¹D¥¦­Ìªº¤º®e©M PHP ¹w³]Åܼƪº²`¤J°Q½×¡A½Ð°Ñ¦Ò<link linkend="reserved.variables">«O¯dªº¥ý«e©w¸qÅܼÆ</link>¤@¸`¡C¦¹¥~¡A±z¤]·|¯d·N¦³ªº¹w³]ÅÜ¼Æ (<varname>$HTTP_*_VARS</varname>) ¤´µM¦s¦b¡C
+    
+    &avail.register-long-arrays;
+   </simpara>
+   
+   <note>
+    <title>¥iÅÜÅܼÆ</title>
+    <para>
+    Superglobals ¤£¯à·í§@<link linkend="language.variables.variable">¥iÅÜÅܼÆ</link>¨Ó¨Ï¥Î¡C
+    </para>
+   </note>
+
+   <para>
+    ¦pªG¬Y¨Ç <link linkend="ini.variables-order">variables_order</link> ¤¤ªºÅܼƨS¦³³Q³]©w¡A¥¦­Ì¬Û¹ïªº PHP ¹w³]³¯¦C¤]±N·|¬OªÅªº¡C
+   </para>
+
+   <variablelist id="language.variables.superglobals">
+    <title>PHP ªº Superglobals</title>
+    <varlistentry>
+     <term><link linkend="reserved.variables.globals">$GLOBALS</link></term>
+     <listitem>
+      <simpara>
+      ¥]§t¤@­Ó«ü¦Vµ{¦¡¥þ°ì½d³ò¤º¥i¥ÎÅܼƪº¯Á¤Þ¡C¦¹³¯¦Cªº¯Á¤ÞÁ䬰¥þ°ìÅܼƪº¦WºÙ¡C<varname>$GLOBALS</varname> ¦Û PHP 3 ¶}©l´N¤w¦s¦b¡C
+      </simpara>
+     </listitem>
+    </varlistentry>
+    <varlistentry>
+     <term><link linkend="reserved.variables.server">$_SERVER</link></term>
+     <listitem>
+      <simpara>
+      ¥Ñºô­¶¦øªA¾¹³]©wªºÅܼƩΥثeªºµ{¦¡©Ò°õ¦æªºÀô¹Ò²£¥ÍªºÅܼơC¨ä©Ê½èÃþ¦ü¦³ªº <varname>$HTTP_SERVER_VARS</varname> ³¯¦C¡AÁöµM¥Ø«eÁÙ¥i¥H¨Ï¥Î¡A¦ý¤£³Q«ØÄ³¡C
+      </simpara>
+     </listitem>
+    </varlistentry>
+    <varlistentry>
+     <term><link linkend="reserved.variables.get">$_GET</link></term>
+     <listitem>
+      <simpara>
+      ³q¹L HTTP GET ´£¨Ñµ¹µ{¦¡ªºÅܼơC¨ä©Ê½èÃþ¦ü¦³ªº <varname>$HTTP_GET_VARS</varname> ³¯¦C¡AÁöµM¥Ø«eÁÙ¥i¥H¨Ï¥Î¡A¦ý¤£³Q«ØÄ³¡C
+      </simpara>
+     </listitem>
+    </varlistentry>
+    <varlistentry>
+     <term><link linkend="reserved.variables.post">$_POST</link></term>
+     <listitem>
+      <simpara>
+      ³q¹L HTTP POST ´£¨Ñµ¹µ{¦¡ªºÅܼơC¨ä©Ê½èÃþ¦ü¦³ªº <varname>$HTTP_POST_VARS</varname>³¯¦C¡AÁöµM¥Ø«eÁÙ¥i¥H¨Ï¥Î¡A¦ý¤£³Q«ØÄ³¡C
+      </simpara>
+     </listitem>
+    </varlistentry>
+    <varlistentry>
+     <term><link linkend="reserved.variables.cookies">$_COOKIE</link></term>
+     <listitem>
+      <simpara>
+      ³q¹L HTTP cookies ´£¨Ñµ¹µ{¦¡ªºÅܼơC¨ä©Ê½èÃþ¦ü¦³ªº <varname>$HTTP_COOKIE_VARS</varname>³¯¦C¡AÁöµM¥Ø«eÁÙ¥i¥H¨Ï¥Î¡A¦ý¤£³Q«ØÄ³¡C
+      </simpara>
+     </listitem>
+    </varlistentry>
+    <varlistentry>
+     <term><link linkend="reserved.variables.files">$_FILES</link></term>
+     <listitem>
+      <simpara>
+      ³q¹L HTTP POST ÀɮפW¶Ç´£¨Ñµ¹µ{¦¡ªºÅܼơC¨ä©Ê½èÃþ¦ü¦³ªº <varname>$HTTP_POST_FILES</varname>³¯¦C¡AÁöµM¥Ø«eÁÙ¥i¥H¨Ï¥Î¡A¦ý¤£³Q«ØÄ³¡C¸Ô±¡½Ð°Ñ¾\ <link linkend="features.file-upload.post-method">POST ¤W¶Ç¤è¦¡</link>¡C
+      </simpara>
+     </listitem>
+    </varlistentry>
+    <varlistentry>
+     <term><link linkend="reserved.variables.environment">$_ENV</link></term>
+     <listitem>
+      <simpara>
+      °õ¦æÀô¹Ò´£¨Ñµ¹µ{¦¡ªºÅܼơC¨ä©Ê½èÃþ¦ü¦³ªº <varname>$HTTP_ENV_VARS</varname>³¯¦C¡AÁöµM¥Ø«eÁÙ¥i¥H¨Ï¥Î¡A¦ý¤£³Q«ØÄ³¡C
+      </simpara>
+     </listitem>
+    </varlistentry>
+    <varlistentry>
+     <term><link linkend="reserved.variables.request">$_REQUEST</link></term>
+     <listitem>
+      <simpara>
+       ³q¹L¥ô¦ó¨Ï¥ÎªÌ¿é¤J³~®|¦Ó´£¨Ñµ¹µ{¦¡ªºÅܼơA¤]¥¿¦]¦p¦¹¤£­È±o«H¥ô¡C¦¹³¯¦C¤¤Åܼƪº¦s¦b»P§_¤Î¦¸§Ç¬O¨M©w©ó <link linkend="ini.variables-order">variables_order</link> ªº³]©w¡CPHP 4.1.0 ¤§«eªºª©¥»¨Ã¨S¦³Ãþ¦ü¦¹³¯¦CªºÅܼơC½Ð¦P®É°Ñ¾\ <function>import_request_variables</function>¡C
+      </simpara>
+      <note>
+       <simpara>
+        ¦b<link linkend="features.commandline">«ü¥O¦æ</link>¼Ò¦¡¤U°õ¦æ®É¡A¥¦¨Ã<emphasis>¤£</emphasis>¥]§t <varname>argv</varname> ©M <varname>argc</varname> ¶µ¥Ø¡C¦¹¨â¶µ¥Ø¥u¦b <varname>$_SERVER</varname> ³¯¦C¤¤¥X²{¡C
+       </simpara>
+      </note> 
+     </listitem>
+    </varlistentry>
+    <varlistentry>
+     <term><link linkend="reserved.variables.session">$_SESSION</link></term>
+     <listitem>
+      <simpara>
+       ¥Ø«e©Mµ{¦¡ª`¥U¤Fªº session ÅܼơC¨ä©Ê½èÃþ¦ü¦³ªº <varname>$HTTP_SESSION_VARS</varname>³¯¦C¡AÁöµM¥Ø«eÁÙ¥i¥H¨Ï¥Î¡A¦ý¤£³Q«ØÄ³¡C¸Ô±¡½Ð°Ñ¾\ <link linkend="ref.session">Session ³B²z¨ç¼Æ</link>¤@¸`¡C
+      </simpara>
+     </listitem>
+    </varlistentry>
+   </variablelist>
+
+  </sect1>
+
+
+  <sect1 id="language.variables.scope">
+   <title>Åܼƽd³ò</title>
+
+   <simpara>
+    Åܼƪº½d³ò¥u¬O¦b¨ä©Ò©w¸qªºªÅ¶¡¤º¦s¦b¡C¦b¤j³¡¥÷ªº±¡ªp¤U¡APHP ªºÅܼƥu¦³¤@­Ó³æ¤@ªº½d³ò¡C³o³æ¤@ªº½d³ò¤]¥]§t¤F¥H include ©M require ¤è¦¡¤Þ¤JªºÀɮסC¨Ò¦p¡G
+   </simpara>
+   <informalexample>
+    <programlisting role="php">
+<![CDATA[
+<?php
+$a = 1;
+include "b.inc";
+?>
+]]>
+    </programlisting>
+   </informalexample>
+   <simpara>
+    ¨Ò¤l¤¤¡AÅÜ¼Æ <varname>$a</varname> ¤]¦s¦b¤_³Q¥]§t¤Jªºµ{¦¡ <filename>b.inc</filename> ¤¤¡C¦ý¬O¦b¨Ï¥ÎªÌ¦Û­qªº¨ç¼Æ¤¤¡A¤@­Ó°Ï°ì©Êªº¨ç¼Æ½d³ò±N³Q¤Þ¥Î¡C¥ô¦ó¦b¨ç¼Æ¤º¨Ï¥ÎªºÅܼƦb¹w³]ªº±¡ªp¤U¥u§½­­©ó¸Ó¨ç¼Æªº½d³ò¤º¡C¨Ò¦p¡G
+   </simpara>
+    
+   <informalexample>
+    <programlisting role="php"> 
+<![CDATA[
+<?php
+$a = 1; /* global scope */ 
+
+function Test()
+{ 
+    echo $a; /* reference to local scope variable */ 
+} 
+
+Test();
+?>
+]]>
+    </programlisting>
+   </informalexample>
+
+   <simpara>
+    ³o­Óµ{¦¡¤£·|¿é¥X¥ô¦óªF¦è¡A¦]¬° echo ­z¥y¨Ï¥Î¤F¥»°Ï°ìª©¥»ªº <varname>$a</varname> ÅܼơA¦Ó¸Ó¥»°Ï°ìÅܼƨå¼´¿³Q¤À°t¤@­Ó­È¡C§A·|µo²{³o©M C »y¨¥ªº°µªk¤£¦P¡A¦]¬° C ªº¥þ°ìÅܼƬO¦Û°Êªº´£¨Ñµ¹¦U¨ç¼Æ¡A°£«D¦b¥»°ì©w¸q¤¤«ü©úºM¾P¡C¦¹°µªk¥i¯à·|¤Þ­P¤@¨Ç°ÝÃD¡A¦p¨Ï¥ÎªÌ¤£·V¦a§ó§ï¤F¥þ°ìÅܼƪº­È¡C¦b PHP ¤¤¡A¥þ°ìÅܼƦb¥»°ì¨Ï¥Î«e¥²¶·¥ý«Å§G¬°¥þ°ì¡C¨Ò¤l¡G
+   </simpara>
+
+   <informalexample>
+    <programlisting role="php">
+<![CDATA[
+<?php
+$a = 1;
+$b = 2;
+
+function Sum()
+{
+    global $a, $b;
+
+    $b = $a + $b;
+} 
+
+Sum();
+echo $b;
+?>
+]]>
+    </programlisting>
+   </informalexample>
+
+   <simpara>
+    ¤W­z¨Ò¤l±N·|¿é¥X &quot;3&quot;¡C¦b¨ç¼Æ¤º«Å§G <varname>$a</varname> ¤Î <varname>$b</varname> ¬°¥þ°ì«á¡A©Ò¦³¯A¤Î¸Ó¨â­ÓÅܼƪº¨Ï¥Î±N¦Û°Ê«ü¦V¥þ°ìªºª©¥»¡CPHP ¨S¦³­­©w¤@­Ó¨ç¼Æ¥i¥H¨Ï¥Îªº¥þ°ìÅܼƪº¼Æ¶q¡C
+   </simpara>
+
+   <simpara>
+    ²Ä¤GºØ¦s¨ú¥þ°ì½d³ò¤¤ªºÅܼƤèªk¬O¨Ï¥Î¤@­Ó¥Ñ PHP ¯S§O©w¸qªº³¯¦C¡G<varname>$GLOBALS</varname>¡C«e­±ªº¨Ò¤l¥i¥H­«¼g¬°¡G
+   </simpara>
+
+   <informalexample>
+    <programlisting role="php">
+<![CDATA[
+<?php
+$a = 1;
+$b = 2;
+
+function Sum()
+{
+    $GLOBALS["b"] = $GLOBALS["a"] + $GLOBALS["b"];
+} 
+
+Sum();
+echo $b;
+?>
+]]>
+    </programlisting>
+   </informalexample>
+
+   <simpara>
+    <varname>$GLOBALS</varname> ¬O¤@­ÓÃöÁp³¯¦C (associative array)¡A¥þ°ìÅܼƪº¦W§Y¬°¯Á¤ÞÁä¡A¦Ó¸ÓÅܼƪº¤º®e§Y¬°³¯¦Cªº­È¡C¦³§_¯d·N¨ì <varname>$GLOBALS</varname> ¦b¥ô¦ó¤@­Ó½d³ò³£¥X²{¡H¨º¬O¦]¬° $GLOBALS ¬O¤@­Ó<link linkend="language.variables.superglobals">superglobal</link>¡C³o¬O¤@­Ó¥Ü½d superglobals ±j¤j¥\¯àªº¨Ò¤l¡G
+   </simpara>
+   <para>
+   
+   <informalexample>
+    <programlisting role="php">
+<![CDATA[
+<?php
+function test_global()
+{
+    // Most predefined variables aren't "super" and require 
+    // 'global' to be available to the functions local scope.
+    global $HTTP_POST_VARS;
+    
+    print $HTTP_POST_VARS['name'];
+    
+    // Superglobals are available in any scope and do 
+    // not require 'global'.  Superglobals are available 
+    // as of PHP 4.1.0
+    print $_POST['name'];
+}
+?>
+]]>
+     </programlisting>
+    </informalexample>
+   </para>
+   
+   <simpara>
+    Åܼƽd³òªº¥t¤@­Ó­«­n¥\¯à¬°<emphasis>ÀRºA</emphasis>ÅܼơCÀRºAÅܼƥu¦b¥»°ì¨ç¼Æ½d³ò¤º¦s¦b¡A¦ý¬O·íµ{¦¡°õ¦æÂ÷¶}¦¹½d³ò®É¡A¥¦¨Ã¤£·|³à¥¢¥¦ªº­È¡C¬Ý¬Ý¤U­±ªº¨Ò¤l¡G
+   </simpara>
+
+   <informalexample>
+    <programlisting role="php">
+<![CDATA[
+<?php
+function Test ()
+{
+    $a = 0;
+    echo $a;
+    $a++;
+}
+?>
+]]>
+    </programlisting>
+   </informalexample>
+
+   <simpara>
+    ¦¹¨ç¼Æ¨S¦³¤°»ò¥Î³B¡A¦]¨C¤@¦¸°õ¦æ¥¦®É¡A¥¦±N <varname>$a</varname> ³]¬° <literal>0</literal> µM«á¦C¦L¥X &quot;0&quot;¡C<varname>$a</varname>++ ¼W¥[¤F <varname>$a</varname> ªº­È¡A¦ý¨Ã¨S¦³¹ê»Ú¥Î³~¦]¬°¤@¥¹Â÷¶}¤F¸Ó¨ç¼Æ¡AÅÜ¼Æ <varname>$a</varname> ¤]ÀH¤§®ø¥¢¡C­n³]­p¤@­Ó¦³¥Îªº¡B¤£·|¥á¥¢·í«e­p¼Æªº­p¼Æ¨ç¼Æ¡A§Ú­Ì¥i¥H±N <varname>$a</varname>«Å§G¬°ÀRºA¡G
+   </simpara>
+
+   <informalexample>
+    <programlisting role="php">
+<![CDATA[
+<?php
+function Test()
+{
+    static $a = 0;
+    echo $a;
+    $a++;
+}
+?>
+]]>
+    </programlisting>
+   </informalexample>
+
+   <simpara>
+    ²{¦b¡A¨C·í¨ç¼Æ Test() ³Q©I¥s®É¡A¥¦·|¦C¦L¥X <varname>$a</varname> ªº­È¡AµM«á¥[¤W¤@¡C
+   </simpara>
+
+   <simpara>
+    ÀRºAÅܼƤ]´£¨Ñ¤@ºØ³B²z»¼°j¨ç¼Æªº¤èªk¡C»¼°j¨ç¼Æ¬O¤@ºØ©I¥s¦Û¤vªº¨ç¼Æ¡C½s¼g»¼°j¨ç¼Æ®É¥²¶·¯d·N¡A¦]¬°­Y½s¼g¿ù»~¡A¥¦¦³¥i¯à·|µL©w­­¦a»¼°j¡C±z¥²¶·½T©w¨¬°÷ªº¤è¦¡¨Ó²×¤î»¼°j¡C¤U¦C²³æªº¨ç¼Æ±N»¼°j¦a¼Æ¨ì 10¡A§Q¥ÎÀRºAÅÜ¼Æ <varname>$count</varname> ¨ÓÂ_©w¤°»ò®É­Ô°±¤î¡G 
+   </simpara>
+
+   <informalexample>
+    <programlisting role="php">
+<![CDATA[
+<?php
+function Test()
+{
+    static $count = 0;
+
+    $count++;
+    echo $count;
+    if ($count < 10) {
+        Test ();
+    }
+    $count--;
+}
+?>
+]]>
+    </programlisting>
+   </informalexample>
+
+   <simpara>
+    ÅX°Ê <literal>PHP 4</literal> ªº Zend Engine 1 ¬O¥H°Ñ·Óªº¤è¦¡¨Ó¹ê²{ <literal>static</literal> ©M <literal>global</literal> ªº¡C¨Ò¦p¡A¤@­Ó¯u¥¿ªº¥þ°ìÅܼƨϥΠ<literal>global</literal> ¤è¦¡¤Þ¶i¤@­Ó¨ç¼Æ½d³ò®É¹ê»Ú¤W´N¬O«Ø¥ß¤F¤@­Ó¥þ°ìÅܼƪº°Ñ·Ó¡C³o±N¾É­P¤@¨Ç·N·Q¤£¨ìªº¦æ¬°¡A¥¿¦p¤U¦C¨Ò¤l©Ò­z¡G
+   </simpara>
+
+   <informalexample>
+    <programlisting role="php">
+<![CDATA[
+<?php
+function test_global_ref() {
+    global $obj;
+    $obj = &new stdclass;
+}
+
+function test_global_noref() {
+    global $obj;
+    $obj = new stdclass;
+}
+
+test_global_ref();
+var_dump($obj);
+test_global_noref();
+var_dump($obj);
+?>
+]]>
+    </programlisting>
+   </informalexample>
+
+   <simpara>
+    °õ¦æ³o­Ó¨Ò¤l±N·|¾É­P¤U¦Cªº¿é¥X¡G
+   </simpara>
+
+   <screen>
+NULL
+object(stdClass)(0) {
+}
+   </screen>
+
+   <simpara>
+    <literal>static</literal> ³¯­z¦¡¤]·|¾É­P¦P¼Ëªº¿é¥X¡C°Ñ·Ó¨Ã¨S¦³³QÀRºA¦aÀx¦s¡G
+   </simpara>
+   
+   <informalexample>
+    <programlisting role="php">
+<![CDATA[
+<?php
+function &get_instance_ref() {
+    static $obj;
+
+    echo "Static object: ";
+    var_dump($obj);
+    if (!isset($obj)) {
+        // Assign a reference to the static variable
+        $obj = &new stdclass;
+    }
+    $obj->property++;
+    return $obj;
+}
+
+function &get_instance_noref() {
+    static $obj;
+
+    echo "Static object: ";
+    var_dump($obj);
+    if (!isset($obj)) {
+        // Assign the object to the static variable
+        $obj = new stdclass;
+    }
+    $obj->property++;
+    return $obj;
+}
+
+$obj1 = get_instance_ref();
+$still_obj1 = get_instance_ref();
+echo "\n";
+$obj2 = get_instance_noref();
+$still_obj2 = get_instance_noref();
+?>
+]]>
+    </programlisting>
+   </informalexample>
+
+   <simpara>
+   °õ¦æ¦¹¨Ò¤l±N¾É­P¤U¦Cªº¿é¥X¡G
+   </simpara>
+
+   <screen>
+Static object: NULL
+Static object: NULL
+
+Static object: NULL
+Static object: object(stdClass)(1) {
+  ["property"]=>
+  int(1)
+}
+   </screen>
+
+   <simpara>
+    ¤W­z¨Ò¤l¥Ü½d¤F¦b«ü¬£¤@­Ó°Ñ·Óµ¹¤©¤@­ÓÀRºAÅܼƫá¡A·í±z²Ä¤G¦¸©I¥s <literal>&amp;get_instance_ref()</literal> ¨ç¼Æ®É¡A¥¦¬O<emphasis>¤£·|</emphasis>°O¦í¤§«eªº­Èªº¡C
+   </simpara>
+
+
+  </sect1>
+
+  <sect1 id="language.variables.variable">
+   <title>¥iÅÜÅܼÆ</title>
+
+   <simpara>
+    ¦³®É­Ô¡A¥i¥H¨Ï¥Î¥iÅÜÅܼƷ|¥O¨ì¤u§@§ó¥[¤è«K¡C¤]´N¬O´N¡A¤@­ÓÅܼƪº¦W¥i¥H³Q°ÊºAªº³]©w©M¨Ï¥Î¡C¤@­Ó´¶³qªºÅܼƬO¥H¤U¦Cªº¤èªk³]©w¡G
+   </simpara>
+
+   <informalexample>
+    <programlisting role="php">
+<![CDATA[
+<?php
+$a = "hello";
+?>
+]]>
+    </programlisting>
+   </informalexample>
+
+   <simpara>
+    ¤@­Ó¥iÅÜÅܼƬO¥H¥t¤@­ÓÅܼƪº­È§@¬°¥¦ªºÅܼƦW¡C¦b¤W­z¨Ò¤l¤¤¡A¥u­n¥[¨â­Ó $ ¦b <emphasis>hello</emphasis> ªº«e­±´N¥i§â¥¦·í§@¬O¤@­ÓÅܼƪº¦W¨Ó¨Ï¥Î¤F¡C§Y¡G
+   </simpara>
+
+   <informalexample>
+    <programlisting role="php">
+<![CDATA[
+<?php
+$$a = "world";
+?>
+]]>
+    </programlisting>
+   </informalexample>
+
+   <simpara>
+    ³o®É¡A¦³¨â­ÓÅܼƳQ©w¸qµM«áÀx¦s¦b PHP ªº²Å¸¹ªí¤¤¡G§t¦³ "hello" ªº <varname>$a</varname> ¤Î§t¦³ "world" ªº <varname>$hello</varname>¡C©Ò¥H¡A¦¹±Ô­z¡G
+   </simpara>
+
+   <informalexample>
+    <programlisting role="php">
+<![CDATA[
+<?php
+echo "$a ${$a}";
+?>
+]]>
+    </programlisting>
+   </informalexample>
+
+   <simpara>
+    »P¤U¦C³o¥y¦³µÛ¦P¼Ëªº¿é¥X¡G
+   </simpara>
+
+   <informalexample>
+    <programlisting role="php">
+<![CDATA[
+<?php
+echo "$a $hello";
+?>
+]]>
+    </programlisting>
+   </informalexample>
+
+   <simpara>
+    §Y¡A¥¦­Ì³£¿é¥X¡G<computeroutput>hello world</computeroutput>¡C
+   </simpara>
+
+   <simpara>
+    ¬°¤F­n¦b³¯¦C¤¤¨Ï¥Î¥iÅÜÅܼơA±z¥²¶·­º¥ý¸Ñ¨M¤@­Ó¼Ò½kªº°ÝÃD¡C¤ñ¤è»¡¡A¦pªG±z¨Ï¥Î <varname>$$a[1]</varname>¡A¨º­åªR¾¹¥²¶·ª¾¹D±z¬O·Q·í <varname>$a[1]</varname> ¬OÅܼƨӨϥΡAÁÙ¬O·í <varname>$$a</varname> ¬OÅܼơAµM«á«ü¦V¨º­ÓÅܼƪº²Ä [1] ­Ó¯Á¤Þ¡C¸Ñ¨M¤W­z¼Ò½k°ÝÃDªº»yªk¬O¡G²Ä¤@­Ó±¡ªp¨Ï¥Î <varname>${$a[1]}</varname>¡B²Ä¤G­Ó±¡ªp¨Ï¥Î <varname>${$a}[1]</varname>¡C
+   </simpara>
+   
+   <warning>
+    <simpara>
+     ¥²¶·¯d·Nªº¬O¡A¥iÅÜÅܼƬO¤£¯à¨Ï¥Î©ó PHP ªº <link linkend="language.variables.superglobals">Superglobal ³¯¦C</link>¡C³oªí¥Ü±z¤£¯à¨Ï¥Î <varname>${$_GET}</varname> ³o¼Ëªº±Ô­z¡C¦pªG±z¯uªº·Q¨Ï¥Î superglobals ©Mªº <varname>HTTP_*_VARS</varname>¡A±z¥i¥H¹Á¸Õ¥H<link linkend="language.references">°Ñ·Ó</link>ªº¤è¦¡¨Ï¥Î¡C
+    </simpara>
+   </warning>
+  
+  </sect1>
+
+  <sect1 id="language.variables.external">
+   <title>¨Ó¦Û PHP ¥H¥~ªºÅܼÆ</title>
+   
+   <sect2 id="language.variables.external.form">
+    <title>HTML ªí³æ (GET ©MPOST)</title>
+
+    <simpara>
+     ·í¤@¥÷ªí³æ¶Ç°eµ¹ PHP µ{¦¡®É¡Aªí³æ¤ºªº¸ê°T±N¦Û°Ê´£¨Ñµ¹¸Óµ{¦¡¡C§Ú­Ì¦³«Ü¦h¤èªk¦s¨ú³o¨Ç¸ê°T¡A½d¨Ò¡G
+    </simpara>
+
+    <para>
+     <example>
+      <title>¤@­Ó²³æªº HTML ªí³æ</title>
+      <programlisting role="html">
+<![CDATA[
+<form action="foo.php" method="post">
+    Name:  <input type="text" name="username"><br>
+    Email: <input type="text" name="email"><br>
+    <input type="submit" name="submit" value="Submit me!">
+</form>
+]]>
+      </programlisting>
+     </example>
+    </para>
+
+    <para>
+     ®Ú¾Ú±zªº¦w¸Ë¤è¦¡©M­Ó¤H°¾¦n¡APHP ´£¨Ñ¦hºØ¤è¦¡¦s¨ú HTML ªí³æ¤¤ªº¸ê®Æ¡C¤@¨Ç¨Ò¤l¦p¡G
+    </para>
+    
+    <para>
+     <example>
+      <title>¦s¨ú¤@­Ó¥H POST ¤è¦¡¶Ç°eªºÂ²³æ HTML ªí³æ</title>
+      <programlisting role="html">
+<![CDATA[
+<?php 
+// Available since PHP 4.1.0
+
+   print $_POST['username'];
+   print $_REQUEST['username'];
+
+   import_request_variables('p', 'p_');
+   print $p_username;
+
+// Available since PHP 3. As of PHP 5.0.0, these long predefined
+// variables can be disabled with the register_long_arrays directive.
+
+   print $HTTP_POST_VARS['username'];
+
+// Available if the PHP directive register_globals = on.  As of 
+// PHP 4.2.0 the default value of register_globals = off.
+// Using/relying on this method is not preferred.
+
+   print $username;
+?>
+]]>
+      </programlisting>
+     </example>
+    </para>
+    <para>
+     ¨Ï¥Î GET ¤è¦¡¶Ç°eªºªí³æ¥ÎªkÃþ¦ü¡A¥u¤£¹L¨Ï¥Î¦X¾Aªº¥ý«e©w¸qªº¨ç¼Æ¡CGET ¤]¥i¨Ï¥Î¦b¬d¸ß¦r¦ê (QUERY_STRING) ¡qURL ¤¤°Ý¸¹ '?' «á­±ªº¸ê°T¡r¡C¨Ò¦p¡A<literal>http://www.example.com/test.php?id=3</literal> §t¦³¥H <varname>$_GET['id']</varname> ¤è¦¡¦s¨úªº GET ¸ê®Æ¡C½Ð°Ñ¦Ò <link linkend="reserved.variables.request">$_REQUEST</link> ©M <function>import_request_variables()</function>¡C
+    </para>
+
+    <note>
+     <para>
+      <link linkend="language.variables.superglobals">Superglobal ³¯¦C</link>¦p <varname>$_POST</varname> ¤Î <varname>$_GET</varname> ¦b PHP ª©¥» 4.1.0 ¥H¤W¤~¶}©l´£¨Ñ¡C
+     </para>
+    </note>
+
+    <para>
+     ¤W­±´£¨ì¡A¦b PHP 4.2.0 ¤§«eªºª©¥»¤¤¡A<link linkend="ini.register-globals">register_globals</link> ªº¹w³]­È¬O <emphasis>on</emphasis>¡C¦Ó¦b PHP 3 ¤¤¡A¥¦¥Ã»·¬O on ªº¡C§Ú­Ì«ØÄ³©Ò¦³¨Ï¥ÎªÌ¤£­n¨Ì¿à¦¹«ü¥O¡A¨Ã¦b½s¼g®É±N¥¦·í§@¬O <emphasis>off</emphasis> ¨Ó³]­p±zªºµ{¦¡¡C
+    </para>
+
+    <note>
+     <para>
+      <link linkend="ini.magic-quotes-gpc">magic_quotes_gpc</link> ²ÕºA«ü¥O·|¼vÅT¨ì Get¡APost ©M Cookie ªº­È¡C¦pªG¶}±Ò¦¹«ü¥O¡A(It's "PHP!") ªº­È±NÅܦ¨ (It\'s \"PHP!\")¡C¦¹¸õ¥X¤u§@¦b±N¦r¦ê´¡¤J¸ê®Æ®w«e¬O¥²¶·­n°µªº¡C½Ð°Ñ¦Ò <function>addslashes</function>¡A<function>stripslashes</function> ©M <link linkend="ini.magic-quotes-sybase">magic_quotes_sybase</link>¡C
+     </para>
+    </note>
+    
+    <simpara>
+     PHP ¤]À´±o³B²z³¯¦C¦¡ªºªí³æÅܼơq½Ð°ÑÆ[¬ÛÃöªº <link linkend="faq.html">FAQ</link>¡r¡C±z¥i¥H±N¬ÛÃöªºÅܼÆÂkÃþ¡A©Î¥Î¦¹¥\¯à¨Ó¨ú¦^¦h¤¸¿ï¾Ü¿é¤Jªí³æªº­È¡C¦b¤U¦C½d¨Ò¤¤¡A§Ú­Ì±Nªí³æ±i¶K¨ì¥¦¦Û¤v¡A¨Ã¦b¶Ç°e«á§â¸ê®ÆÅã¥Ü¥X¨Ó¡G
+
+    </simpara>
+
+    <para>
+     <example>
+      <title>§ó½ÆÂøªºªí³æÅܼÆ</title>
+      <programlisting role="php">
+<![CDATA[
+<?php
+if ($HTTP_POST_VARS['action'] == 'submitted') {
+    print '<pre>';
+
+    print_r($HTTP_POST_VARS);
+    print '<a href="'. $HTTP_SERVER_VARS['PHP_SELF'] .'">Please try again</a>';
+
+    print '</pre>';
+} else {
+?>
+<form action="<?php echo $HTTP_SERVER_VARS['PHP_SELF']; ?>" method="post">
+    Name:  <input type="text" name="personal[name]"><br>
+    Email: <input type="text" name="personal[email]"><br>
+    Beer: <br>
+    <select multiple name="beer[]">
+        <option value="warthog">Warthog</option>
+        <option value="guinness">Guinness</option>
+        <option value="stuttgarter">Stuttgarter Schwabenbräu</option>
+    </select><br>
+    <input type="hidden" name="action" value="submitted">
+    <input type="submit" name="submit" value="submit me!">
+</form>
+<?php
+}
+?>
+]]>
+      </programlisting>
+     </example>
+    </para>
+
+    <para>
+     PHP 3 ªº³¯¦Cªí³æÅܼƥu¥i¥H¨Ï¥Î¤@ºû³¯¦C¡A¦Ó PHP 4 «h¨S¦³¦¹­­¨î¡C
+    </para>
+
+    <sect3 id="language.variables.external.form.submit">
+     <title>IMAGE SUBMIT ÅܼƦWºÙ</title>
+
+     <simpara>
+      ¦b¶Ç°eªí³æ®É¡A§Ú­Ì¥i¥H¨Ï¥Î¤U¦C¼ÐÅÒ±N¼Ð·Çªº´£¥æÁä¥H¹Ï¹³¨Ó¨ú¥N¡G
+     </simpara>
+
+     <informalexample>
+      <programlisting role="html">
+<![CDATA[
+<input type="image" src="image.gif" name="sub">
+]]>
+      </programlisting>
+     </informalexample>
+
+     <simpara>
+      ·í¨Ï¥ÎªÌ¦b¹Ï¹³ªº¥ô¦ó¤@³B«ö¤@¤U¡A¦ñÀHªºªí³æ´N·|¶Ç°e¨ì¦øªA¾¹¡AÀH¨ä¦Ó¨ÓÁÙªþ¥[¤F¨â­ÓÅܼơAsub_x ©M sub_y¡C³o¥]§t¤F¨Ï¥ÎªÌ«ö¦b¹Ï¹³ªº®y¼Ð¡C¦³¸gÅ窺¨Ï¥ÎªÌ©Î³\ª¾¹D¥ÑÂsÄý¾¹¶Ç°e¨ÓªºÅܼƦWºÙÀ³¸Ó¥]§t¥y¸¹¡A¦Ó¤£¬O©³½u¡A¦ý PHP ¦Û°Ê¦a±N¥y¸¹Âà´«¦¨¬°©³½u¡C
+     </simpara>
+    </sect3>
+
+   </sect2>
+
+   <sect2 id="language.variables.external.cookies">
+    <title>HTTP Cookies</title>
+
+    <simpara>
+     PHP µ´¹ï¤ä´© <ulink
+     url="&spec.cookies;">Netscape³W®æ</ulink>ªº HTTP cookies¡CCookies ¬O¥Î¨Ó±N¸ê®ÆÀx¦s¦b¥Î¤áºÝªºÂsÄý¾¹¤¤¡A¥H«K¤é«á°lÂÜ©ÎÃѧOªð¦^ªº¨Ï¥ÎªÌ¡C±z¥i¥H¥Î <function>setcookie()</function> ¨ç¼Æ¨Ó³]©w cookies¡CCookies ¬O HTTP header ªº¤@³¡¥÷¡A¦]¦¹ SetCookie ¨ç¼Æ¤@©w­n¦b¥ô¦ó¸ê®Æ¶Ç°e¥hÂsÄý¾¹«e©I¥s¡C³o©M <function>header()</function> ¨ç¼Æ¦³µÛ¬Û¦Pªº­­©w¡CCookie ¸ê®Æ¥i¥H¦b <varname>$_COOKIE</varname>¡A<varname>$HTTP_COOKIE_VARS</varname> ¤Î <varname>$_REQUEST</varname> ³¯¦C¤¤¨Ñ¨Ï¥Î¡C¸Ô±¡©M½d¨Ò½Ð°Ñ¦Ò¤â¥Uªº <function>setcookie()</function> ³¡¥÷¡C
+    </simpara>
+
+    <simpara>
+     ­Y±z­n±N¦h­Ó­È«ü¬£µ¹¤@­Ó cookie ÅܼơA¨º±z´N­n¨Ï¥Î³¯¦C¨Ó«ü¬£¤F¡C½d¨Ò¡G
+    </simpara>
+
+    <informalexample>
+     <programlisting role="php">
+<![CDATA[
+<?php
+  setcookie("MyCookie[foo]", "Testing 1", time()+3600);
+  setcookie("MyCookie[bar]", "Testing 2", time()+3600);
+?>
+]]>
+     </programlisting>
+    </informalexample>
+    
+    <simpara>
+     ³o±N·|«Ø¥ß¨â­Ó­Ó§Oªº cookies¡A¾¨ºÞ²{¦b MyCookie¦b±zªºµ{¦¡¤¤¬O¤@­Ó³æ¤¸³¯¦C¡C¦pªG±z­n¥H¤@­Ó cookie «Ø¥ß¦h­Ó­È¡A¨º±z¥i¥ý¹ï¨º¨Ç­È¨Ï¥Î <function>serialize()</function> ©Î <function>explode()</function> ¨ç¼Æ¡C
+    </simpara>
+
+    <simpara>
+     ¦³¤@ÂI¥²¶·¯d·Nªº¬O¡A¤@­Ó cookie ±N·|´À¥NÂsÄý¾¹¤¤¥t¤@­Ó¦P¦Wªº cookie¡A°£«D¸Ó cookie ªº¸ô®|©Îºô°ì¦WºÙ¤£¦P¡C©Ò¥H¡A¦b³]­pÁʪ«¨®µ{¦¡®É¡A±z³Ì¦n«O«ù¤@­Ó­p¼Æ¾¹¡A¨Ã±N¦¹¼Æ¾Ú¶Ç»¼¤U¥h¡A§Y¡G
+    </simpara>
+
+    <example>
+     <title>¤@­Ó <function>setcookie()</function> ªº½d¨Ò</title>
+     <programlisting role="php">
+<![CDATA[
+<?php
+$count++;
+setcookie("count", $count, time()+3600);
+setcookie("Cart[$count]", $item, time()+3600);
+?>
+]]>
+     </programlisting>
+    </example>
+
+   </sect2>
+
+   <sect2 id="language.variables.external.dot-in-names">
+    <title>¦bÅܼƦW¦r¤¤ªº¥y¸¹ (dots)</title>
+
+    <para>
+     ¤@¯ë¤W¡APHP ¨Ã¤£·|§ó§ï¶Ç¤Jµ{¦¡ªºÅܼƦWºÙ¡CµM¦Ó¡A±z¥²¶·¯d·N¥y¸¹ (.) ¨Ã¤£¬O¤@­Ó¦³®Äªº PHP ÅܼƦWºÙ¦r¤¸¡A¥¿¦p¡G
+
+     <programlisting role="php">
+<![CDATA[
+<?php
+$varname.ext;  /* invalid variable name */
+?>
+]]>
+     </programlisting>
+     ³o®É¡A­åªR¾¹¨£¨ìªº¥u¬O¤@­Ó¥s°µ <varname>$varname</varname> ªºÅܼơA¸òÀHµÛ¦r¦ê³sµ²¹Bºâ¤l (.)¡A¦A¨Ó¬O¤@­ÓµL¤Þ¸¹ªº¦r¦ê¡Gext¡CÅãµM¦a¡A³o¨Ã¤£·|±a¨Ó±z·Q­nªºµ²ªG¡C
+    </para>
+
+    <para>
+     ¥¿¦]¦p¦¹¡APHP ·|¦Û°Êªº±N¶Ç¤JªºÅܼƦWºÙ¤¤ªº¥y¸¹ (.) §ï¬°©³½u (_)¡C
+    </para>
+
+   </sect2>
+
+   <sect2 id="language.variables.determining-type-of">
+    <title>§P©wÅܼƪºÃþ«¬</title>
+
+    <para>
+     ¥Ñ©ó PHP ·|¦Û¦æ§PÂ_ÅܼƪºÃþ«¬¡A¨Ã«ö»Ý­nÂàÅÜ¥¦­ÌªºÃþ«¬¡A¦]¦¹¦³®É¤]Ãø¥H©úÅã¦a§P©w¤@­ÓÅܼƦb¬Y­Ó®É¨èªºÃþ«¬¡C¦³Å²©ó¦¹¡APHP ´£¨Ñ¤F´X­Ó§P©wÅܼÆÃþ«¬ªº¨ç¼Æ¡G<function>gettype()</function>¡B<function>is_array()</function>¡B<function>is_float()</function>¡B<function>is_int()</function>¡B<function>is_object()</function> ¤Î <function>is_string()</function>¡C½Ð°Ñ¾\<link linkend="language.types">Ãþ«¬</link>¤@³¹¡C
+    </para>
+   </sect2>
+
+  </sect1>
+     
+ </chapter>
+ 
+<!-- Keep this comment at the end of the file
+Local variables:
+mode: sgml
+sgml-omittag:t
+sgml-shorttag:t
+sgml-minimize-attributes:nil
+sgml-always-quote-attributes:t
+sgml-indent-step:1
+sgml-indent-data:t
+indent-tabs-mode:nil
+sgml-parent-document:nil
+sgml-default-dtd-file:"../../manual.ced"
+sgml-exposed-tags:nil
+sgml-local-catalogs:nil
+sgml-local-ecat-files:nil
+End:
+vim600: syn=xml fen fdm=syntax fdl=2 si
+vim: et tw=78 syn=sgml
+vi: ts=1 sw=1
+-->