Welcome 2015
[plcapi.git] / doc / xmlrpc_php.xml
index 6f42602..139ef6c 100644 (file)
@@ -4,15 +4,14 @@
 "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>
 
-  <subtitle>version 3.0.0 beta</subtitle>
+  <subtitle>version 3.0.0</subtitle>
 
   <bookinfo>
-    <date>Sep 5, 2009</date>
+    <date>June 15, 2014</date>
 
     <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://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
@@ -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>
 
+    <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>
 
@@ -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
-            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
@@ -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>
-
-          <para>With PHP versions lesser than 5.0.3 wrapping of php functions
-          into xmlrpc methods is not supported yet.</para>
         </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
-    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
@@ -893,7 +913,7 @@ $Id: xmlrpc_php.xml,v 1.27 2008/09/19 18:35:33 ggiunta Exp $
       </glossentry>
 
       <glossentry>
-        <glossterm>lib/xmlrpc_wrappers.inc</glossterm>
+        <glossterm>lib/xmlrpc_wrappers.php</glossterm>
 
         <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>
-        <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
@@ -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
-          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
-          url="http://sourceforge.net/projects/phpxmlrpc">project's
+          url="https://github.com/gggeek/phpxmlrpc/issues">project's
           website</ulink>.</para>
         </listitem>
 
@@ -1338,9 +1358,9 @@ $myStruct = new xmlrpcval(
       array(
         "street" =&gt; new xmlrpcval("Fifht Ave", "string"),
         "city" =&gt; new xmlrpcval("NY", "string")
-      ), 
+      ),
       "struct")
-  ), 
+  ),
   "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
-          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>
@@ -2388,7 +2408,7 @@ $client = new xmlrpc_client("/RPC2", "betty.userland.com", 80);
           <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);
@@ -3642,7 +3662,7 @@ else {
         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
@@ -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
-      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
@@ -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
-      as UTF-8 to avoid any potentail data loss.</para>
+      as UTF-8 to avoid any potential data loss.</para>
     </sect1>
 
     <sect1>