Simple XML-RPC Library (both client and server)

3.1.1 2018-05-12 08:30 UTC

This package is auto-updated.

Last update: 2023-01-24 18:39:27 UTC


unknown unknown


XRL provides the following features:

  • Simple servers, using either the property operator -> or array accessors [] to provide methods.
  • Simple clients, using the regular method call syntax $client->procedure(42) to call a procedure provided by the remote XML-RPC server.
  • Intuitive XML-RPC calls, with automatic type conversion between PHP types and their XML-RPC counterparts.
  • Optional validation of XML-RPC messages (both requests and responses).
  • Two XML output formats (compact or indented), making it easy to debug potential issues.
  • Many different types of installations are possible (sorted from easiest to most complex):
    • Using a PHAR archive
    • Using composer
    • From sources
  • A CLI script (for composer/source installs, but see below) that can be used to query a remote XML-RPC server, display traffic (for debugging purposes), etc.
  • A .phar archive that contains all of XRL's source code and can also be used in place of the regular CLI script.
  • Compatibility with PHP versions from PHP 5.3.4 onward.


Several types of installations are possible:

  • Using a .phar archive:

    Download the PHAR archive for the latest release from

  • Using composer:

    $ php composer.phar require fpoirotte/xrl
  • From sources (stable version)

    • As a git clone:

      $ git clone -b master git://
    • As a .tar.gz archive:

      $ wget --content-disposition
    • As a .zip archive:

      $ wget --content-disposition
  • From sources (development version)

    • As a git clone:

      $ git clone -b develop git://
    • As a .tar.gz archive:

      $ wget --content-disposition
    • As a .zip archive:

      $ wget --content-disposition


Client: look at the code in client.php.

Server: look at the code in server.php.


If you want to contribute to this project:

  • Fork it.
  • Change the code.
  • Send us a pull request.

Please read the section on copyright attribution and licensing below carefully before sending your pull request.

Copyright and license

XRL is released under the 3-clause BSD License. An online copy of the license is available at

We ask contributors to assign the copyright in their contributions to the collective name "XRL Team".

To make things easier, we also ask that you keep the same license in your contributions as the global one if possible (3-clause BSD License).

The copyright and licensing information should be reproduced at the top of every file. A template is given below for PHP files. For other types of files (RelaxNG schemae, reStructuredText pages, etc.), adapt the template to fit that file's particular syntax requirements.

Since we want to retain credit for contributors where it's due, feel free to add a Doxygen \authors command with your name and email in every class where you made significant changes.

Example template (taken from XRL's autoloader) for PHP files containing both copyright information, licensing information and contributor credits:

 * This file is part of XRL, a simple XML-RPC Library for PHP.
 * Copyright (c) 2012, XRL Team. All rights reserved.
 * XRL is licensed under the 3-clause BSD License.
 * For the full copyright and license information, please view the LICENSE
 * file that was distributed with this source code.

namespace fpoirotte\XRL;

 * \brief
 *      An helper class that wraps XRL's autoloader.
 * \authors John Doe <>
 * \authors Jane Doe <>
class Autoload
    // Some code here...