Awesome
Esqueleto para crição de um web service SOAP em PHP
O exemplo utiliza a classe SoapServer, nativa do PHP.
Para consumir o serviço, supondo que ele esteja hospedado em http://127.0.0.3/soap
<?php
require_once 'Topic.php';
//Configura o SOAP client
$client = new SoapClient( 'http://127.0.0.3/soap/service.wsdl' , array(
'trace' => true,
'exceptions' => true,
'style' => SOAP_DOCUMENT,
'use' => SOAP_LITERAL,
'soap_version' => SOAP_1_1,
'encoding' => 'UTF-8',
'classmap' => array(
'Topic' => 'Topic',
)
) );
//Configura a autenticação
$client->__setSoapHeaders( new SoapHeader(
'urn:com.imasters/forum',
'authentication',
(object) array(
'name' => 'usuario',
'pswd' => 'senha',
'token' => sha1( 'token' )
)
) );
try {
//Recupera as notícias
$news = $client->getNews();
var_dump( $news );
} catch ( SoapFault $f ) {
//regras para manipulação do Soap Fault
}