Exfoliate
, (*1)
Exfoliate is a lightweight PHP wrapper for the core SoapClient class., (*2)
This library exists to make interactions with SOAP-based web services less painful. Exfoliate wraps SOAP exceptions in
logical event-based exception classes., (*3)
The Exfoliate SoapClient is capable being constructed without initializing a connection to the web service. This capability
can improve performance and also improve the handling of connection exceptions., (*4)
Installation
The suggested installation method is via composer:, (*5)
php composer.phar require jeremylivingston/exfoliate:dev-master
After installing the Exfoliate library, simply create a new instance of the client and call any web service methods you desire:, (*6)
<?php
use Exfoliate\SoapClient;
$client = new SoapClient('my-service-url', array('trace' => true));
$response = $client->call('GetUser', array('user_id' => 1234));
Use the Exfoliate\SoapClient::setHeaders()
method to set any SOAP headers when the client is initialized:, (*7)
<?php
use Exfoliate\SoapClient;
$client = new SoapClient('my-service-url', array('trace' => true));
$client->setHeaders(
new \SoapHeader('my-namespace', 'Auth', array('User' => 'me', 'Password' => 'pw'))
);
$response = $client->call('GetUser', array('user_id' => 1234));
You can retrieve the most recent request and response content via the Exfoliate\SoapClient::getLastRequest()
and
Exfoliate\SoapClient::getLastResponse()
methods, respectively:, (*8)
<?php
use Exfoliate\SoapClient;
$client = new SoapClient('my-service-url', array('trace' => true));
$response = $client->call('GetUser', array('user_id' => 1234));
$lastRequest = $client->getLastRequest();
$lastResponse = $client->getLastResponse();