Chapter 4. Files in the distribution


the XML-RPC classes. include() this in your PHP files to use the classes.


the XML-RPC server class. include() this in addition to to get server functionality

lib/compat/array_key_exists.php, lib/compat/is_a.php, lib/compat/is_scalar.php, lib/compat/var_export.php, lib/compat/vesrions_compare.php

compatibility functions: these files implement the compatibility layer needed to run the library with PHP versions 4.0 and 4.1


a sample server implementing xmlrpc proxy functionality.


a sample server hosting various demo functions, as well as a full suite of functions used for interoperability testing. It is used by testsuite.php (see below) for unit testing the library, and is not to be copied literally into your production servers

demo/client/client.php, demo/client/agesort.php, demo/client/which.php

client code to exercise some of the functions in server.php, including the interopEchoTests.whichToolkit method.


client code to illustrate 'wrapping' of remote methods into php functions.


client code to illustrate usage of introspection capabilities offered by server.php.


client code to illustrate usage of an xmlrpc-to-email gateway using Dave Winer's XML-RPC server at


example client code that queries an xmlrpc server built in Zope.


examples of how to construct xmlrpcval types

demo/demo1.txt, demo/demo2.txt, demo/demo3.txt

XML-RPC responses captured in a file for testing purposes (you can use these to test the xmlrpcmsg->parseResponse() method).

demo/server/discuss.php, demo/client/comment.php

Software used in the PHP chapter of The Jellyfish Book to provide a comment server and allow the attachment of comments to stories from Meerkat's data store.

test/testsuite.php, test/parse_args.php

A unit test suite for this software package. If you do development on this software, please consider submitting tests for this suite.


A (very limited) benchmarking suite for this software package. If you do development on this software, please consider submitting benchmarks for this suite.

test/phpunit.php, test/PHPUnit/*.php

An (incomplete) version PEAR's unit test framework for PHP. The complete package can be found at

extras/, extras/

Perl and Python programs to exercise server.php to test that some of the methods work.


Frontier scripts to exercise the demo server. Thanks to Dave Winer for permission to include these. See Dave's announcement of these.


A test certificate key for the SSL support, which can be used to generate dummy certificates. It has the passphrase "test."