PHP Classes
elePHPant
Icontem

Ripcord: Implement XML-RPC clients and servers

Recommend this page to a friend!
  Info   Screenshots Screenshots   View files View files (5)   DownloadInstall with Composer Download .zip   Reputation   Support forum   Blog    
Last Updated Ratings Unique User Downloads Download Rankings
2011-05-31 (5 years ago) RSS 2.0 feedNot enough user ratingsTotal: 555 This week: 2All time: 5,197 This week: 517Up
Version License PHP version Categories
ripcord 1.1GNU General Publi...5.0PHP 5, Web services
Description Author

This package can be used to implement XML-RPC and SOAP clients and servers.

There is client class that can send HTTP requests to XML-RPC servers.

Another class can be used to implement XML-RPC servers acting as interface to a given object.

Innovation Award
PHP Programming Innovation award nominee
November 2010
Number 5


Prize: One copy of the Zend Studio
Implementing and configuring Web services is often a tedious job which requires defining which functions are exposed to clients and what code implements the service functions.

This package simplifies that job for implementing XML-RPC servers by defining and calling a given class that defines all the functions that a Web service is intended to expose.

Manuel Lemos
Picture of Auke van Slooten
Name: Auke van Slooten <contact>
Classes: 1 package by
Country: The Netherlands The Netherlands
Age: 43
All time rank: 295683 in The Netherlands The Netherlands
Week rank: 510 Up19 in The Netherlands The Netherlands Up
Innovation award
Innovation award
Nominee: 1x

Details
Readme                      Ripcord: Easy XML-RPC Client and Server for PHP 5
=============================================================================

Ripcord is a very easy to use XML-RPC library for PHP. It provides client, 
server and auto documentation features for XML-RPC but also SimpleRPC and
simplified SOAP (1.1). It uses PHP's xmlrpc library and it needs at least PHP 5.

To create a simple xmlrpc client do something like this:

<?php
    require_once('ripcord.php');
    $client = ripcord::xmlrpcClient( 'http://www.moviemeter.nl/ws' );
    $score  = $client->film->getScore( 'e3dee9d19a8c3af7c92f9067d2945b59', 500 );
?>

See the RipcordClientManual 
<http://code.google.com/p/ripcord/wiki/RipcordClientManual> for more information.

To create a simple xmlrpc server do something like this:

<?php
    require_once('ripcord.php');
    class myTest {
        public function Foo() {
            return 'Bar';
        }
    }
    $test = new MyTest();
    $server = ripcord::server( $test );
    $server->run();
?>

See the RipcordServerManual 
<http://code.google.com/p/ripcord/wiki/RipcordServerManual> for more information.


Extending Ripcord
=================

Ripcord is also very simple to extend. All functionality can be changed
through dependency injection. The client by default uses the PHP Streams API
to connect to a server, but can simply be reconfigured to use CURL. You
can provide your own configuration or even a completely new transport method
by simply injecting a new transport object into the client.

Any server created with Ripcord is auto documenting by default. Simply browse
to the URL of your RPC server and you will see a list of all methods including
any inline documentation for that method, if you use docblock style comments, e.g.:

/**
 * This will show up with your method description.
 */
function yourMethod() {
}

The auto documentor is again easily extended to use your own styles or extensions
and you can simply inject a completely different documentor object into the server
if you want. Or skip it altogether.


Documentation
=============

The full API documentation is included in the docs/ directory.

Screenshots  
  • ripcord.png
  Files folder image Files  
File Role Description
Plain text file readme.txt Doc. Readme
Plain text file ripcord.php Class Base ripcord class
Plain text file ripcord_client.php Class Client API
Plain text file ripcord_documentor.php Class Automatic documentation generator
Plain text file ripcord_server.php Class Server API

 Version Control Unique User Downloads Download Rankings  
 0%
Total:555
This week:2
All time:5,197
This week:517Up