PHP Classes
elePHPant
Icontem

Ripcord: Implement XML-RPC clients and servers

Recommend this page to a friend!
Stumble It! Stumble It! Bookmark in del.icio.us Bookmark in del.icio.us
  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 (4 years ago) RSS 2.0 feedNot yet rated by the usersTotal: 519 This week: 1All time: 5,288 This week: 1,067Up
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: 42
All time rank: 295682 in The Netherlands The Netherlands
Week rank: 859 Up24 in The Netherlands The Netherlands Up
Innovation award
Innovation award
Nominee: 1x

Details provided by the author  
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:519All time:5,288
 This week:1This week:1,067Up