Minor fix in one charset-related test
[plcapi.git] / doc / xmlrpc_php.xml
index 6f42602..363f8a7 100644 (file)
@@ -4,15 +4,14 @@
 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
 <!--
 PHP-XMLRPC User manual
 "http://www.oasis-open.org/docbook/xml/4.5/docbookx.dtd">
 <!--
 PHP-XMLRPC User manual
-$Id: xmlrpc_php.xml,v 1.27 2008/09/19 18:35:33 ggiunta Exp $
 -->
 <book lang="en">
   <title>XML-RPC for PHP</title>
 
 -->
 <book lang="en">
   <title>XML-RPC for PHP</title>
 
-  <subtitle>version 3.0.0 beta</subtitle>
+  <subtitle>version 3.0.0</subtitle>
 
   <bookinfo>
 
   <bookinfo>
-    <date>Sep 5, 2009</date>
+    <date>June 15, 2014</date>
 
     <authorgroup>
       <author>
 
     <authorgroup>
       <author>
@@ -114,7 +113,8 @@ $Id: xmlrpc_php.xml,v 1.27 2008/09/19 18:35:33 ggiunta Exp $
     url="http://usefulinc.com/">Useful Information Company</ulink>. As of the
     1.0 stable release, the project was opened to wider involvement and moved
     to <ulink
     url="http://usefulinc.com/">Useful Information Company</ulink>. As of the
     1.0 stable release, the project was opened to wider involvement and moved
     to <ulink
-    url="http://phpxmlrpc.sourceforge.net/">SourceForge</ulink>.</para>
+    url="http://phpxmlrpc.sourceforge.net/">SourceForge</ulink>; later, to <ulink
+    url="https://github.com/">Github</ulink></para>
 
     <para>A list of XML-RPC implementations for other languages such as Perl
     and Python can be found on the <ulink
 
     <para>A list of XML-RPC implementations for other languages such as Perl
     and Python can be found on the <ulink
@@ -212,6 +212,33 @@ $Id: xmlrpc_php.xml,v 1.27 2008/09/19 18:35:33 ggiunta Exp $
     functions and methods please take a look at the source code of the
     library, which is quite thoroughly commented in javadoc-like form.</para>
 
     functions and methods please take a look at the source code of the
     library, which is quite thoroughly commented in javadoc-like form.</para>
 
+    <sect1>
+      <title>3.0.0</title>
+
+      <para><emphasis>Note:</emphasis> this is the last release of the library that will support PHP 5.1 and up.
+      Future releases will target php 5.3 as minimum supported version.</para>
+
+      <para><itemizedlist>
+      <listitem>
+        <para>when using curl and keepalive, reset curl handle if we did not get back an http 200 response (eg a 302)</para>
+      </listitem>
+
+      <listitem>
+        <para>omit port on http 'Host' header if it is 80</para>
+      </listitem>
+
+      <listitem>
+        <para>test suite allows interrogating https servers ignoring their certs</para>
+      </listitem>
+
+      <listitem>
+        <para>method setAcceptedCompression was failing to disable reception of compressed responses if the
+         client supported them</para>
+      </listitem>
+
+      </itemizedlist></para>
+    </sect1>
+
     <sect1>
       <title>3.0.0 beta</title>
 
     <sect1>
       <title>3.0.0 beta</title>
 
@@ -459,7 +486,7 @@ $Id: xmlrpc_php.xml,v 1.27 2008/09/19 18:35:33 ggiunta Exp $
             <para>The <function>wrap_php_function</function> and
             <function>wrap_xmlrpc_method</function> functions have been moved
             out of the base library file <filename>xmlrpc.inc</filename> into
             <para>The <function>wrap_php_function</function> and
             <function>wrap_xmlrpc_method</function> functions have been moved
             out of the base library file <filename>xmlrpc.inc</filename> into
-            a file of their own: <filename>xmlrpc_wrappers.inc</filename>. You
+            a file of their own: <filename>xmlrpc_wrappers.php</filename>. You
             will have to include() / require() it in your scripts if you have
             been using those functions. For increased security, the automatic
             rebuilding of php object instances out of received xmlrpc structs
             will have to include() / require() it in your scripts if you have
             been using those functions. For increased security, the automatic
             rebuilding of php object instances out of received xmlrpc structs
@@ -806,9 +833,6 @@ $Id: xmlrpc_php.xml,v 1.27 2008/09/19 18:35:33 ggiunta Exp $
           <code>wrap_php_function</code> and <code>wrap_xmlrpc_method</code>,
           and has many caveats, with php being a typeless language and
           all...</para>
           <code>wrap_php_function</code> and <code>wrap_xmlrpc_method</code>,
           and has many caveats, with php being a typeless language and
           all...</para>
-
-          <para>With PHP versions lesser than 5.0.3 wrapping of php functions
-          into xmlrpc methods is not supported yet.</para>
         </listitem>
 
         <listitem>
         </listitem>
 
         <listitem>
@@ -855,11 +879,7 @@ $Id: xmlrpc_php.xml,v 1.27 2008/09/19 18:35:33 ggiunta Exp $
     configuration.</para>
 
     <para>The <emphasis>minimum supported</emphasis> PHP version is
     configuration.</para>
 
     <para>The <emphasis>minimum supported</emphasis> PHP version is
-    5.0.</para>
-
-    <para>Automatic generation of xml-rpc methods from php functions is only
-    supported with PHP version 5.0.3 and later (note that the lib will
-    generate some warnings with PHP 5 in strict error reporting mode).</para>
+    5.3.</para>
 
     <para>If you wish to use SSL or HTTP 1.1 to communicate with remote
     servers, you need the "curl" extension compiled into your PHP
 
     <para>If you wish to use SSL or HTTP 1.1 to communicate with remote
     servers, you need the "curl" extension compiled into your PHP
@@ -893,7 +913,7 @@ $Id: xmlrpc_php.xml,v 1.27 2008/09/19 18:35:33 ggiunta Exp $
       </glossentry>
 
       <glossentry>
       </glossentry>
 
       <glossentry>
-        <glossterm>lib/xmlrpc_wrappers.inc</glossterm>
+        <glossterm>lib/xmlrpc_wrappers.php</glossterm>
 
         <glossdef>
           <para>helper functions to "automagically" convert plain php
 
         <glossdef>
           <para>helper functions to "automagically" convert plain php
@@ -977,7 +997,7 @@ $Id: xmlrpc_php.xml,v 1.27 2008/09/19 18:35:33 ggiunta Exp $
       </glossentry>
 
       <glossentry>
       </glossentry>
 
       <glossentry>
-        <glossterm>demo/demo1.txt, demo/demo2.txt, demo/demo3.txt</glossterm>
+        <glossterm>demo/demo1.xml, demo/demo2.xml, demo/demo3.xml</glossterm>
 
         <glossdef>
           <para>XML-RPC responses captured in a file for testing purposes (you
 
         <glossdef>
           <para>XML-RPC responses captured in a file for testing purposes (you
@@ -1115,9 +1135,9 @@ $Id: xmlrpc_php.xml,v 1.27 2008/09/19 18:35:33 ggiunta Exp $
         <listitem>
           <para>The <emphasis>XML-RPC for PHP</emphasis> development is hosted
           on <ulink
         <listitem>
           <para>The <emphasis>XML-RPC for PHP</emphasis> development is hosted
           on <ulink
-          url="http://phpxmlrpc.sourceforge.net">phpxmlrpc.sourceforge.net</ulink>.
+          url="https://github.com/gggeek/phpxmlrpc">github.com/gggeek/phpxmlrpc</ulink>.
           Bugs, feature requests and patches can be posted to the <ulink
           Bugs, feature requests and patches can be posted to the <ulink
-          url="http://sourceforge.net/projects/phpxmlrpc">project's
+          url="https://github.com/gggeek/phpxmlrpc/issues">project's
           website</ulink>.</para>
         </listitem>
 
           website</ulink>.</para>
         </listitem>
 
@@ -1302,10 +1322,10 @@ $Id: xmlrpc_php.xml,v 1.27 2008/09/19 18:35:33 ggiunta Exp $
         <para>Examples:</para>
 
         <programlisting language="php">
         <para>Examples:</para>
 
         <programlisting language="php">
-$myInt = new xmlrpcvalue(1267, "int");
-$myString = new xmlrpcvalue("Hello, World!", "string");
-$myBool = new xmlrpcvalue(1, "boolean");
-$myString2 = new xmlrpcvalue(1.24, "string"); // note: this will serialize a php float value as xmlrpc string
+$myInt = new xmlrpcval(1267, "int");
+$myString = new xmlrpcval("Hello, World!", "string");
+$myBool = new xmlrpcval(1, "boolean");
+$myString2 = new xmlrpcval(1.24, "string"); // note: this will serialize a php float value as xmlrpc string
 </programlisting>
 
         <para>The fourth constructor form can be used to compose complex
 </programlisting>
 
         <para>The fourth constructor form can be used to compose complex
@@ -1338,9 +1358,9 @@ $myStruct = new xmlrpcval(
       array(
         "street" =&gt; new xmlrpcval("Fifht Ave", "string"),
         "city" =&gt; new xmlrpcval("NY", "string")
       array(
         "street" =&gt; new xmlrpcval("Fifht Ave", "string"),
         "city" =&gt; new xmlrpcval("NY", "string")
-      ), 
+      ),
       "struct")
       "struct")
-  ), 
+  ),
   "struct");
 </programlisting>
 
   "struct");
 </programlisting>
 
@@ -1781,7 +1801,7 @@ $msg = new xmlrpcmsg("examples.getStateName", array(new xmlrpcval(23, "int")));
           <function>parseResponse.</function></para>
 
           <para>This method is useful to construct responses from pre-prepared
           <function>parseResponse.</function></para>
 
           <para>This method is useful to construct responses from pre-prepared
-          files (see files <literal>demo1.txt, demo2.txt, demo3.txt</literal>
+          files (see files <literal>demo1.xml, demo2.xml, demo3.xml</literal>
           in this distribution). It processes any HTTP headers it finds, and
           does not close the file handle.</para>
         </sect3>
           in this distribution). It processes any HTTP headers it finds, and
           does not close the file handle.</para>
         </sect3>
@@ -2388,7 +2408,7 @@ $client = new xmlrpc_client("/RPC2", "betty.userland.com", 80);
           <para>Example usage:</para>
 
           <programlisting language="php">
           <para>Example usage:</para>
 
           <programlisting language="php">
-$client = new xmlrpc_client("phpxmlrpc.sourceforge.net/server");
+$client = new xmlrpc_client("phpxmlrpc.sourceforge.net/server.php");
 $client-&gt;return_type = 'phpvals';
 $message = new xmlrpcmsg("examples.getStateName", array(new xmlrpcval(23, "int")));
 $resp = $client-&gt;send($message);
 $client-&gt;return_type = 'phpvals';
 $message = new xmlrpcmsg("examples.getStateName", array(new xmlrpcval(23, "int")));
 $resp = $client-&gt;send($message);
@@ -3642,7 +3662,7 @@ else {
         transparently carried out by the lib, while datetime vals are passed
         around as strings).</para>
 
         transparently carried out by the lib, while datetime vals are passed
         around as strings).</para>
 
-        <para>Known limitations: requires PHP 5.0.3 +; only works for
+        <para>Known limitations: only works for
         user-defined functions, not for PHP internal functions (reflection
         does not support retrieving number/type of params for those); the
         wrapped php function will not be able to programmatically return an
         user-defined functions, not for PHP internal functions (reflection
         does not support retrieving number/type of params for those); the
         wrapped php function will not be able to programmatically return an
@@ -4074,7 +4094,7 @@ if (!$resp-&gt;faultCode())
       <para>PHP-XMLRPC only supports the ISO 8859-1 and UTF8 character sets.
       The net result of this situation is that those extra characters will not
       be properly encoded, and will be received at the other end of the
       <para>PHP-XMLRPC only supports the ISO 8859-1 and UTF8 character sets.
       The net result of this situation is that those extra characters will not
       be properly encoded, and will be received at the other end of the
-      XML-RPC tranmission as "garbled data". Unfortunately the library cannot
+      XML-RPC transmission as "garbled data". Unfortunately the library cannot
       provide real support for CP1252 because of limitations in the PHP 4 xml
       parser. Luckily, we tried our best to support this character set anyway,
       and, since version 2.2.1, there is some form of support, left commented
       provide real support for CP1252 because of limitations in the PHP 4 xml
       parser. Luckily, we tried our best to support this character set anyway,
       and, since version 2.2.1, there is some form of support, left commented
@@ -4085,7 +4105,7 @@ if (!$resp-&gt;faultCode())
       <filename>xmlrpc.inc</filename> (you can search for the string "1252"),
       then set <code>$GLOBALS['xmlrpc_internalencoding']='CP1252';</code>
       Please note that all incoming data will then be fed to your application
       <filename>xmlrpc.inc</filename> (you can search for the string "1252"),
       then set <code>$GLOBALS['xmlrpc_internalencoding']='CP1252';</code>
       Please note that all incoming data will then be fed to your application
-      as UTF-8 to avoid any potentail data loss.</para>
+      as UTF-8 to avoid any potential data loss.</para>
     </sect1>
 
     <sect1>
     </sect1>
 
     <sect1>