goba Sat Jul 27 07:48:17 2002 EDT Added files: /phpdoc/en/reference/ftp/functions ftp-async-continue.xml ftp-async-fget.xml ftp-async-fput.xml ftp-async-get.xml ftp-async-put.xml
Modified files: /phpdoc/en/reference/ftp constants.xml reference.xml /phpdoc/en/reference/ftp/functions ftp-fget.xml ftp-fput.xml ftp-get.xml ftp-put.xml ftp-set-option.xml Log: Adding new functions, adding see alsos to new functions. 5 new constant, and a new parameter for the get and put functions.
Index: phpdoc/en/reference/ftp/constants.xml diff -u phpdoc/en/reference/ftp/constants.xml:1.1 phpdoc/en/reference/ftp/constants.xml:1.2 --- phpdoc/en/reference/ftp/constants.xml:1.1 Mon May 6 03:19:01 2002 +++ phpdoc/en/reference/ftp/constants.xml Sat Jul 27 07:48:17 2002 @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="iso-8859-1"?> -<!-- $Revision: 1.1 $ --> +<!-- $Revision: 1.2 $ --> <section id="ftp.constants"> &reftitle.constants; &extension.constants; @@ -55,7 +55,68 @@ </term> <listitem> <simpara> - + See <function>ftp_set_option</function> for information. + </simpara> + </listitem> + </varlistentry> + </variablelist> + <simpara> + The following constants were introduced in PHP 4.3.0. + </simpara> + <variablelist> + <varlistentry> + <term> + <constant>FTP_AUTOSEEK</constant> + (<link linkend="language.types.integer">integer</link>) + </term> + <listitem> + <simpara> + See <function>ftp_set_option</function> for information. + </simpara> + </listitem> + </varlistentry> + <varlistentry> + <term> + <constant>FTP_AUTORESUME</constant> + (<link linkend="language.types.integer">integer</link>) + </term> + <listitem> + <simpara> + Automaticly determine resumepos/startpos for get/put request + (does only work if FTP_AUTOSEEK is enabled) + </simpara> + </listitem> + </varlistentry> + <varlistentry> + <term> + <constant>FTP_FAILED</constant> + (<link linkend="language.types.integer">integer</link>) + </term> + <listitem> + <simpara> + Asynchronous transfer has failed + </simpara> + </listitem> + </varlistentry> + <varlistentry> + <term> + <constant>FTP_FINISHED</constant> + (<link linkend="language.types.integer">integer</link>) + </term> + <listitem> + <simpara> + Asynchronous transfer has finished + </simpara> + </listitem> + </varlistentry> + <varlistentry> + <term> + <constant>FTP_MOREDATA</constant> + (<link linkend="language.types.integer">integer</link>) + </term> + <listitem> + <simpara> + Asynchronous transfer is still active </simpara> </listitem> </varlistentry> Index: phpdoc/en/reference/ftp/reference.xml diff -u phpdoc/en/reference/ftp/reference.xml:1.3 phpdoc/en/reference/ftp/reference.xml:1.4 --- phpdoc/en/reference/ftp/reference.xml:1.3 Mon May 6 03:19:01 2002 +++ phpdoc/en/reference/ftp/reference.xml Sat Jul 27 07:48:17 2002 @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="iso-8859-1"?> -<!-- $Revision: 1.3 $ --> +<!-- $Revision: 1.4 $ --> <reference id="ref.ftp"> <title>FTP functions</title> <titleabbrev>FTP</titleabbrev> @@ -9,7 +9,7 @@ &reftitle.intro; <para> The functions in this extension implement client access to file - servers speaking the File Transfer Protocol FTP as defined in + servers speaking the File Transfer Protocol (FTP) as defined in <ulink url="&spec.ftp;">&spec.ftp;</ulink>. </para> </section> Index: phpdoc/en/reference/ftp/functions/ftp-fget.xml diff -u phpdoc/en/reference/ftp/functions/ftp-fget.xml:1.2 phpdoc/en/reference/ftp/functions/ftp-fget.xml:1.3 --- phpdoc/en/reference/ftp/functions/ftp-fget.xml:1.2 Wed Apr 17 02:38:15 2002 +++ phpdoc/en/reference/ftp/functions/ftp-fget.xml Sat Jul 27 07:48:17 2002 @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="iso-8859-1"?> -<!-- $Revision: 1.2 $ --> +<!-- $Revision: 1.3 $ --> <!-- splitted from ./en/functions/ftp.xml, last change in rev 1.2 --> <refentry id="function.ftp-fget"> <refnamediv> @@ -14,6 +14,7 @@ <methodparam><type>resource</type><parameter>fp</parameter></methodparam> <methodparam><type>string</type><parameter>remote_file</parameter></methodparam> <methodparam><type>int</type><parameter>mode</parameter></methodparam> + <methodparam +choice="opt"><type>int</type><parameter>resumepos</parameter></methodparam> </methodsynopsis> <para> <function>ftp_fget</function> retrieves <parameter>remote_file</parameter> @@ -22,8 +23,16 @@ specified must be either <constant>FTP_ASCII</constant> or <constant>FTP_BINARY</constant>. </para> + <note> + <para> + The <parameter>resumepos</parameter> parameter was added in PHP 4.3.0. + </para> + </note> <para> Returns &true; on success, &false; on error. + </para> + <para> + See also <function>ftp_get</function>. </para> </refsect1> </refentry> Index: phpdoc/en/reference/ftp/functions/ftp-fput.xml diff -u phpdoc/en/reference/ftp/functions/ftp-fput.xml:1.2 phpdoc/en/reference/ftp/functions/ftp-fput.xml:1.3 --- phpdoc/en/reference/ftp/functions/ftp-fput.xml:1.2 Wed Apr 17 02:38:15 2002 +++ phpdoc/en/reference/ftp/functions/ftp-fput.xml Sat Jul 27 07:48:17 2002 @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="iso-8859-1"?> -<!-- $Revision: 1.2 $ --> +<!-- $Revision: 1.3 $ --> <!-- splitted from ./en/functions/ftp.xml, last change in rev 1.2 --> <refentry id="function.ftp-fput"> <refnamediv> @@ -14,14 +14,20 @@ <methodparam><type>string</type><parameter>remote_file</parameter></methodparam> <methodparam><type>resource</type><parameter>fp</parameter></methodparam> <methodparam><type>int</type><parameter>mode</parameter></methodparam> + <methodparam +choice="opt"><type>int</type><parameter>startpos</parameter></methodparam> </methodsynopsis> <para> <function>ftp_fput</function> uploads the data from the file pointer <parameter>fp</parameter> until end of file. The results are stored in <parameter>remote_file</parameter> on the FTP server. The transfer <parameter>mode</parameter> specified must be either - <constant>FTP_ASCII</constant> or <constant>FTP_BINARY</constant> + <constant>FTP_ASCII</constant> or <constant>FTP_BINARY</constant>. </para> + <note> + <para> + The <parameter>startpos</parameter> parameter was added in PHP 4.3.0. + </para> + </note> <para> Returns &true; on success, &false; on error. </para> Index: phpdoc/en/reference/ftp/functions/ftp-get.xml diff -u phpdoc/en/reference/ftp/functions/ftp-get.xml:1.2 phpdoc/en/reference/ftp/functions/ftp-get.xml:1.3 --- phpdoc/en/reference/ftp/functions/ftp-get.xml:1.2 Wed Apr 17 02:38:15 2002 +++ phpdoc/en/reference/ftp/functions/ftp-get.xml Sat Jul 27 07:48:17 2002 @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="iso-8859-1"?> -<!-- $Revision: 1.2 $ --> +<!-- $Revision: 1.3 $ --> <!-- splitted from ./en/functions/ftp.xml, last change in rev 1.2 --> <refentry id="function.ftp-get"> <refnamediv> @@ -14,6 +14,7 @@ <methodparam><type>string</type><parameter>local_file</parameter></methodparam> <methodparam><type>string</type><parameter>remote_file</parameter></methodparam> <methodparam><type>int</type><parameter>mode</parameter></methodparam> + <methodparam +choice="opt"><type>int</type><parameter>resumepos</parameter></methodparam> </methodsynopsis> <para> <function>ftp_get</function> retrieves <parameter>remote_file</parameter> @@ -22,11 +23,16 @@ be either <constant>FTP_ASCII</constant> or <constant>FTP_BINARY</constant>. </para> + <note> + <para> + The <parameter>resumepos</parameter> parameter was added in PHP 4.3.0. + </para> + </note> <para> Returns &true; on success, &false; on error. </para> <para> - See also <function>ftp_fget</function>. + See also <function>ftp_fget</function> and <function>ftp_async_get</function>. </para> </refsect1> </refentry> Index: phpdoc/en/reference/ftp/functions/ftp-put.xml diff -u phpdoc/en/reference/ftp/functions/ftp-put.xml:1.2 phpdoc/en/reference/ftp/functions/ftp-put.xml:1.3 --- phpdoc/en/reference/ftp/functions/ftp-put.xml:1.2 Wed Apr 17 02:38:16 2002 +++ phpdoc/en/reference/ftp/functions/ftp-put.xml Sat Jul 27 07:48:17 2002 @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="iso-8859-1"?> -<!-- $Revision: 1.2 $ --> +<!-- $Revision: 1.3 $ --> <!-- splitted from ./en/functions/ftp.xml, last change in rev 1.2 --> <refentry id="function.ftp-put"> <refnamediv> @@ -14,6 +14,7 @@ <methodparam><type>string</type><parameter>remote_file</parameter></methodparam> <methodparam><type>string</type><parameter>local_file</parameter></methodparam> <methodparam><type>int</type><parameter>mode</parameter></methodparam> + <methodparam +choice="opt"><type>int</type><parameter>startpos</parameter></methodparam> </methodsynopsis> <para> <function>ftp_put</function> stores <parameter>local_file</parameter> @@ -21,6 +22,11 @@ <parameter>mode</parameter> specified must be either <constant>FTP_ASCII</constant> or <constant>FTP_BINARY</constant>. </para> + <note> + <para> + The <parameter>startpos</parameter> parameter was added in PHP 4.3.0. + </para> + </note> <para> Returns &true; on success, &false; on error. </para> Index: phpdoc/en/reference/ftp/functions/ftp-set-option.xml diff -u phpdoc/en/reference/ftp/functions/ftp-set-option.xml:1.3 phpdoc/en/reference/ftp/functions/ftp-set-option.xml:1.4 --- phpdoc/en/reference/ftp/functions/ftp-set-option.xml:1.3 Tue May 14 18:38:03 2002 +++ phpdoc/en/reference/ftp/functions/ftp-set-option.xml Sat Jul 27 07:48:17 +2002 @@ -1,5 +1,5 @@ <?xml version="1.0" encoding="iso-8859-1"?> -<!-- $Revision: 1.3 $ --> +<!-- $Revision: 1.4 $ --> <!-- splitted from ./en/functions/ftp.xml, last change in rev 1.32 --> <refentry id='function.ftp-set-option'> <refnamediv> @@ -40,6 +40,12 @@ functions. Parameter <parameter>value</parameter> has be to of type <type>int</type> and must be greater than 0. The default timeout is 90 seconds.</entry> + </row> + <row> + <entry>FTP_AUTOSEEK</entry> + <entry>When enabled (which is the default) get/put requests with + a <parameter>resumepos</parameter>/<parameter>startpos</parameter> + parameter will first seek to the wanted position within the stream. </row> </tbody> </tgroup> Index: phpdoc/en/reference/ftp/functions/ftp-async-continue.xml +++ phpdoc/en/reference/ftp/functions/ftp-async-continue.xml <?xml version="1.0" encoding="iso-8859-1"?> <!-- $Revision: 1.1 $ --> <refentry id="function.ftp-async-continue"> <refnamediv> <refname>ftp_async_continue</refname> <refpurpose>Continues retrieving/sending a file asyncronously</refpurpose> </refnamediv> <refsect1> <title>Description</title> <methodsynopsis> <type>bool</type><methodname>ftp_async_continue</methodname> <methodparam><type>resource</type><parameter>ftp_stream</parameter></methodparam> </methodsynopsis> <para> Continues retrieving/sending a file asyncronously </para> <para> Returns <constant>FTP_FAILED</constant> or <constant>FTP_FINISHED</constant> or <constant>FTP_MOREDATA</constant>. </para> </refsect1> </refentry> <!-- 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 --> Index: phpdoc/en/reference/ftp/functions/ftp-async-fget.xml +++ phpdoc/en/reference/ftp/functions/ftp-async-fget.xml <?xml version="1.0" encoding="iso-8859-1"?> <!-- $Revision: 1.1 $ --> <refentry id="function.ftp-async-fget"> <refnamediv> <refname>ftp_async_fget</refname> <refpurpose>Retrieves a file from the FTP server asynchronly and writes it to an open file</refpurpose> </refnamediv> <refsect1> <title>Description</title> <methodsynopsis> <type>bool</type><methodname>ftp_async_fget</methodname> <methodparam><type>resource</type><parameter>ftp_stream</parameter></methodparam> <methodparam><type>resource</type><parameter>fp</parameter></methodparam> <methodparam><type>string</type><parameter>remote_file</parameter></methodparam> <methodparam><type>int</type><parameter>mode</parameter></methodparam> <methodparam choice="opt"><type>int</type><parameter>resumepos</parameter></methodparam> </methodsynopsis> <para> <function>ftp_async_fget</function> retrieves <parameter>remote_file</parameter> from the FTP server, and writes it to the given file pointer, <parameter>fp</parameter>. The transfer <parameter>mode</parameter> specified must be either <constant>FTP_ASCII</constant> or <constant>FTP_BINARY</constant>. The difference between <function>ftp_fget</function> is that this function retrieves the file asyncronously, so you can do other things in your program while the file is downloaded. </para> <para> Returns &true; on success, &false; on error. </para> <para> See also <function>ftp_async_get</function>. </para> </refsect1> </refentry> <!-- 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 --> Index: phpdoc/en/reference/ftp/functions/ftp-async-fput.xml +++ phpdoc/en/reference/ftp/functions/ftp-async-fput.xml <?xml version="1.0" encoding="iso-8859-1"?> <!-- $Revision: 1.1 $ --> <refentry id="function.ftp-async-fput"> <refnamediv> <refname>ftp_async_fput</refname> <refpurpose>Stores a file from an open file to the FTP server asyncronly</refpurpose> </refnamediv> <refsect1> <title>Description</title> <methodsynopsis> <type>bool</type><methodname>ftp_async_fput</methodname> <methodparam><type>resource</type><parameter>ftp_stream</parameter></methodparam> <methodparam><type>string</type><parameter>remote_file</parameter></methodparam> <methodparam><type>resource</type><parameter>fp</parameter></methodparam> <methodparam><type>int</type><parameter>mode</parameter></methodparam> <methodparam choice="opt"><type>int</type><parameter>startpos</parameter></methodparam> </methodsynopsis> <para> <function>ftp_async_fput</function> uploads the data from the file pointer <parameter>fp</parameter> until end of file. The results are stored in <parameter>remote_file</parameter> on the FTP server. The transfer <parameter>mode</parameter> specified must be either <constant>FTP_ASCII</constant> or <constant>FTP_BINARY</constant>. The difference between <function>ftp_fput</function> is that this function uploads the file asyncronously, so you can do other things in your program while the file is uploadde. </para> <para> Returns &true; on success, &false; on error. </para> <para> See also <function>ftp_async_put</function>, <function>ftp_async_continue</function>, <function>ftp_put</function> and <function>ftp_fput</function>. </para> </refsect1> </refentry> <!-- 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 --> Index: phpdoc/en/reference/ftp/functions/ftp-async-get.xml +++ phpdoc/en/reference/ftp/functions/ftp-async-get.xml <?xml version="1.0" encoding="iso-8859-1"?> <!-- $Revision: 1.1 $ --> <refentry id="function.ftp-async-get"> <refnamediv> <refname>ftp_async_get</refname> <refpurpose>Retrieves a file from the FTP server asynchronly and writes it to a local file</refpurpose> </refnamediv> <refsect1> <title>Description</title> <methodsynopsis> <type>bool</type><methodname>ftp_async_get</methodname> <methodparam><type>resource</type><parameter>ftp_stream</parameter></methodparam> <methodparam><type>string</type><parameter>local_file</parameter></methodparam> <methodparam><type>string</type><parameter>remote_file</parameter></methodparam> <methodparam><type>int</type><parameter>mode</parameter></methodparam> <methodparam choice="opt"><type>int</type><parameter>resumepos</parameter></methodparam> </methodsynopsis> <para> <function>ftp_async_get</function> retrieves <parameter>remote_file</parameter> from the FTP server, and saves it to <parameter>local_file</parameter> locally. The transfer <parameter>mode</parameter> specified must be either <constant>FTP_ASCII</constant> or <constant>FTP_BINARY</constant>. The difference between <function>ftp_get</function> is that this function retrieves the file asyncronously, so you can do other things in your program while the file is downloaded. </para> <para> Returns &true; on success, &false; on error. </para> <para> <example> <title><function>ftp_async_get</function> example</title> <programlisting role="php"> <![CDATA[ // Initate the download $ret = ftp_async_get($my_connection, "test", "README", FTP_BINARY); while ($ret == FTP_MOREDATA) { // Do whatever you want echo "."; // Continue downloading... $ret = ftp_async_continue ($my_connection); } if ($ret != FTP_FINISHED) { echo "There was an error downloading the file..."; exit(1); } ]]> </programlisting> </example> <example> <title>Resuming a download with <function>ftp_async_get</function></title> <programlisting role="php"> <![CDATA[ // Initate $ret = ftp_async_get ($my_connection, "test", "README", FTP_BINARY, filesize("test")); // OR: $ret = ftp_async_get ($my_connection, "test", "README", // FTP_BINARY, FTP_AUTORESUME); while ($ret == FTP_MOREDATA) { // Do whatever you want echo "."; // Continue downloading... $ret = ftp_async_continue ($my_connection); } if ($ret != FTP_FINISHED) { echo "There was an error downloading the file..."; exit(1); } ]]> </programlisting> </example> <example> <title> Resuming a download at position 100 to a new file with <function>ftp_async_get</function> </title> <programlisting role="php"> <![CDATA[ // Disable Autoseek ftp_set_option ($my_connection, FTP_AUTOSEEK, FALSE); // Initiate $ret = ftp_async_get ($my_connection, "newfile", "README", FTP_BINARY, 100); while ($ret == FTP_MOREDATA) { ... // Continue downloading... $ret = ftp_async_continue ($my_connection); } ]]> </programlisting> </example> </para> <para> In the example above, <filename>"newfile"</filename> is 100 bytes smaller than <filename>"README"</filename> on the FTP server because we started reading at offset 100. If we have not have disabled <constant>FTP_AUTOSEEK</constant> the first 100 bytes of newfile will be <literal>'\0'</literal>. </para> <para> See also <function>ftp_async_fget</function>, <function>ftp_async_continue</function>, <function>ftp_get</function> and <function>ftp_fget</function>. </para> </refsect1> </refentry> <!-- 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 --> Index: phpdoc/en/reference/ftp/functions/ftp-async-put.xml +++ phpdoc/en/reference/ftp/functions/ftp-async-put.xml <?xml version="1.0" encoding="iso-8859-1"?> <!-- $Revision: 1.1 $ --> <refentry id="function.ftp-async-put"> <refnamediv> <refname>ftp_async_put</refname> <refpurpose>Stores a file on the FTP server asynchronly</refpurpose> </refnamediv> <refsect1> <title>Description</title> <methodsynopsis> <type>bool</type><methodname>ftp_async_put</methodname> <methodparam><type>resource</type><parameter>ftp_stream</parameter></methodparam> <methodparam><type>string</type><parameter>remote_file</parameter></methodparam> <methodparam><type>string</type><parameter>local_file</parameter></methodparam> <methodparam><type>int</type><parameter>mode</parameter></methodparam> <methodparam choice="opt"><type>int</type><parameter>startpos</parameter></methodparam> </methodsynopsis> <para> <function>ftp_async_put</function> stores <parameter>local_file</parameter> on the FTP server, as <parameter>remote_file</parameter>. The transfer <parameter>mode</parameter> specified must be either <constant>FTP_ASCII</constant> or <constant>FTP_BINARY</constant>. The difference between <function>ftp_put</function> is that this function uploads the file asyncronously, so you can do other things in your program while the file is uploadde. </para> <para> Returns &true; on success, &false; on error. </para> <para> <example> <title><function>ftp_async_put</function> example</title> <programlisting role="php"> <![CDATA[ // Initiate the Upload $ret = ftp_async_put($my_connection, "test.remote", "test.local", FTP_BINARY); while ($ret == FTP_MOREDATA) { // Do whatever you want echo "."; // Continue uploading... $ret = ftp_async_continue ($my_connection); } if ($ret != FTP_FINISHED) { echo "There was an error uploading the file..."; exit(1); } ]]> </programlisting> </example> <example> <title>Resuming an upload with <function>ftp_async_put</function></title> <programlisting role="php"> <![CDATA[ // Initiate $ret = ftp_async_put ($my_connection, "test.remote", "test.local", FTP_BINARY, ftp_size("test.remote")); // OR: $ret = ftp_async_put ($my_connection, "test.remote", "test.local", // FTP_BINARY, FTP_AUTORESUME); while ($ret == FTP_MOREDATA) { // Do whatever you want echo "."; // Continue uploading... $ret = ftp_async_continue ($my_connection); } if ($ret != FTP_FINISHED) { echo "There was an error uploading the file..."; exit(1); } ]]> </programlisting> </example> </para> <para> See also <function>ftp_async_fput</function>, <function>ftp_async_continue</function>, <function>ftp_put</function> and <function>ftp_fput</function>. </para> </refsect1> </refentry> <!-- 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 -->
-- PHP Documentation Mailing List (http://www.php.net/) To unsubscribe, visit: http://www.php.net/unsub.php