xmlrpc_php.xml.svn-base

来自「PHP 知识管理系统(基于树结构的知识管理系统), 英文原版的PHP源码。」· SVN-BASE 代码 · 共 1,037 行 · 第 1/3 页

SVN-BASE
1,037
字号
<?xml version="1.0" encoding="ISO-8859-1"?><?xml-stylesheet href="docbook-css/driver.css" type="text/css"?><!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.4//EN""http://www.oasis-open.org/docbook/xml/4.4/docbookx.dtd"><!--PHP-XMLRPC User manual$Id: xmlrpc_php.xml,v 1.24 2007/03/01 21:21:04 ggiunta Exp $--><book>  <title>XML-RPC for PHP</title>  <subtitle>version 2.2</subtitle>  <bookinfo>    <date>February 25, 2007</date>    <authorgroup>      <author>        <firstname>Edd</firstname>        <surname>Dumbill</surname>      </author>      <author>        <firstname>Gaetano</firstname>        <surname>Giunta</surname>      </author>      <author>        <firstname>Miles</firstname>        <surname>Lott</surname>      </author>      <author>        <firstname>Justin R.</firstname>        <surname>Miller</surname>      </author>      <author>        <firstname>Andres</firstname>        <surname>Salomon</surname>      </author>    </authorgroup>    <copyright>      <year>1999,2000,2001</year>      <holder>Edd Dumbill, Useful Information Company</holder>    </copyright>    <legalnotice>      <para>All rights reserved.</para>      <para>Redistribution and use in source and binary forms, with or without      modification, are permitted provided that the following conditions are      met:</para>      <para><itemizedlist>          <listitem>            <para>Redistributions of source code must retain the above copyright            notice, this list of conditions and the following disclaimer.</para>          </listitem>          <listitem>            <para>Redistributions in binary form must reproduce the above            copyright notice, this list of conditions and the following            disclaimer in the documentation and/or other materials provided with            the distribution.</para>          </listitem>          <listitem>            <para>Neither the name of the "XML-RPC for PHP" nor the names of its            contributors may be used to endorse or promote products derived from            this software without specific prior written permission.</para>          </listitem>        </itemizedlist></para>      <para>THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS      "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED      TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR      PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE      LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR      CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF      SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS      INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN      CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)      ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE      POSSIBILITY OF SUCH DAMAGE.</para>    </legalnotice>  </bookinfo>  <chapter id="introduction">    <title>Introduction</title>    <para>XML-RPC is a format devised by <ulink    url="http://www.userland.com/">Userland Software</ulink> for achieving    remote procedure call via XML using HTTP as the transport. XML-RPC has its    own web site, <ulink    url="http://www.xmlrpc.com/">www.xmlrpc.com</ulink></para>    <para>This collection of PHP classes provides a framework for writing    XML-RPC clients and servers in PHP.</para>    <para>Main goals of the project are ease of use, flexibility and    completeness.</para>    <para>The original author is Edd Dumbill of <ulink    url="http://usefulinc.com/">Useful Information Company</ulink>. As of the    1.0 stable release, the project has been opened to wider involvement and    moved to <ulink    url="http://phpxmlrpc.sourceforge.net/">SourceForge</ulink>.</para>    <para>A list of XML-RPC implementations for other languages such as Perl and    Python can be found on the <ulink    url="http://www.xmlrpc.com/">www.xmlrpc.com</ulink> site.</para>    <sect1>      <title>Acknowledgements</title>      <para>Daniel E. Baumann</para>      <para>James Bercegay</para>      <para>Leon Blackwell</para>      <para>Stephane Bortzmeyer</para>      <para>Daniel Convissor</para>      <para>Geoffrey T. Dairiki</para>      <para>Stefan Esser</para>      <para>James Flemer</para>      <para>Ernst de Haan</para>      <para>Tom Knight</para>      <para>Axel Kollmorgen</para>      <para>Peter Kocks</para>      <para>Daniel Krippner</para>      <para>S. Kuip</para>      <para>A. Lambert</para>      <para>Dan Libby</para>      <para>Arnaud Limbourg</para>      <para>Ernest MacDougal Campbell III</para>      <para>Lukasz Mach</para>      <para>Kjartan Mannes</para>      <para>Ben Margolin</para>      <para>Nicolay Mausz</para>      <para>Justin Miller</para>      <para>Jan Pfeifer</para>      <para>Giancarlo Pinerolo</para>      <para>Peter Russel</para>      <para>Viliam Simko</para>      <para>Douglas Squirrel</para>      <para>Idan Sofer</para>      <para>Anatoly Techtonik</para>      <para>Eric van der Vlist</para>      <para>Christian Wenz</para>      <para>Jim Winstead</para>      <para>Przemyslaw Wroblewski</para>    </sect1>  </chapter>  <chapter id="news">    <title>What's new</title>    <para><emphasis>Note:</emphasis> not all items the following list have (yet)    been fully documented, and some might not be present in any other chapter in    the manual. To find a more detailed description of new 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>2.2</title>      <itemizedlist>        <listitem>          <para>fixed: debugger errors on php installs with magic_quotes_gpc          on</para>        </listitem>        <listitem>          <para>fixed: support for https connections via proxy</para>        </listitem>        <listitem>          <para>fixed: wrap_xmlrpc_method() generated code failed to properly          encode php objects</para>        </listitem>        <listitem>          <para>improved: slightly faster encoding of data which is internally          UTF-8</para>        </listitem>        <listitem>          <para>improved: debugger always generates a 'null' id for jsonrpc if          user omits it</para>        </listitem>        <listitem>          <para>new: debugger can take advantage of a graphical value builder          (it has to be downloaded separately, as part of jsxmlrpc package. See          Appendix D for more details)</para>        </listitem>        <listitem>          <para>new: support for the &lt;NIL/&gt; xmlrpc extension. see from          more details</para>        </listitem>        <listitem>          <para>new: server support for the system.getCapabilities xmlrpc          extension</para>        </listitem>        <listitem>          <para>new: <function><link          linkend="wrap_xmlrpc_method">wrap_xmlrpc_method()</link></function>          accepts two new options: debug and return_on_fault</para>        </listitem>      </itemizedlist>    </sect1>    <sect1>      <title>2.1</title>      <para><itemizedlist>          <listitem>            <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            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 in            <function>wrap_xmlrpc_method()</function> has been disabled (but it            can be optionally re-enabled). Both            <function>wrap_php_function()</function> and            <function>wrap_xmlrpc_method()</function> functions accept many more            options to fine tune their behaviour, including one to return the            php code to be saved and later used as standalone php script</para>          </listitem>          <listitem>            <para>The constructor of xmlrpcval() values has seen some internal            changes, and it will not throw a php warning anymore when invoked            using an unknown xmlrpc type: the error will only be written to php            error log. Also <code>new xmlrpcval('true', 'boolean')</code> is not            supported anymore</para>          </listitem>          <listitem>            <para>The new function <function>php_xmlrpc_decode_xml()</function>            will take the xml representation of either an xmlrpc request,            response or single value and return the corresponding php-xmlrpc            object instance</para>          </listitem>          <listitem>            <para>A new function <function>wrap_xmlrpc_server()</function>has            been added, to wrap all (or some) of the methods exposed by a remote            xmlrpc server into a php class</para>          </listitem>          <listitem>            <para>A new file has been added:            <filename>verify_compat.php</filename>, to help users diagnose the            level of compliance of their php installation with the            library</para>          </listitem>          <listitem>            <para>Restored compatibility with php 4.0.5 (for those poor souls            still stuck on it)</para>          </listitem>          <listitem>            <para>Method <methodname>xmlrpc_server-&gt;service()</methodname>            now returns a value: either the response payload or xmlrpcresp            object instance</para>          </listitem>          <listitem>            <para>Method <methodname>xmlrpc_server-&gt;add_to_map()</methodname>            now accepts xmlrpc methods with no param definitions</para>          </listitem>          <listitem>            <para>Documentation for single parameters of exposed methods can be            added to the dispatch map (and turned into html docs in conjunction            with a future release of the 'extras' package)</para>          </listitem>          <listitem>            <para>Full response payload is saved into xmlrpcresp object for            further debugging</para>          </listitem>          <listitem>            <para>The debugger can now generate code that wraps a remote method            into a php function (works for jsonrpc, too); it also has better            support for being activated via a single GET call (e.g. for            integration into other tools)</para>          </listitem>          <listitem>            <para>Stricter parsing of incoming xmlrpc messages: two more invalid            cases are now detected (double <literal>data</literal> element            inside <literal>array</literal> and            <literal>struct</literal>/<literal>array</literal> after scalar            inside <literal>value</literal> element)</para>          </listitem>          <listitem>            <para>More logging of errors in a lot of situations</para>

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?