Jelentősen megkönnyíti a WebService munkát, ha a WSDL-ből olyan PHP osztályt tudunk generálni, amely támogatja az abban leírt kommunikációt.
Ezt a célt szolgálja az itt letölthető anyag: http://code.google.com/p/wsdl2php-interpreter/downloads
Két fájlt tartalmaz: WSDLInterpreter.php, wsdl2php.xsl
Röviden a használatáról:
- Bontsd ki az állományokat és tedd be a webszerver útvonalába, hogy böngészőből futtatható legyen
Pl. erről a címről: http://localhost/WSDLInterpreter - Készíts egy mappát melléjük, ahova a generált PHP osztályok fognak majd kerülni, pl: wsdlClasses néven
Fontos, hogy a mappa írható legyen a böngésző által. - Készíts egy 3 soros PHP programot az alábbiak szerint pl. get_wsdlclass.php néven:
<?php
// Használni szeretnénk a letöltött interpreter-fájlt
require_once "WSDLInterpreter.php";
// Készítünk egy interpreter osztályt, amelynek megadjuk a WSDL elérhetőségét
$wsdl = new WSDLInterpreter("http://valami/Szolgaltatas.wsdl");
// Elmentjük az elkészített PHP osztályokat tartalmazó fájlt a 2. lépésben megadott mappába
$wsdl->savePHP("wsdlClasses/");
?> - Futtasd le az előbbi programot böngészőből, hogy elkészüljön a PHP osztályokat tartalmazó fájl. pl.:
http://localhost/WSDLInterpreter/get_wsdlclass.php
Ha nem ad vissza hibajelzést, akkor jó, egyéb üzenetet nem ír ki. A PHP osztályokat tartalmazó fájlt neve a WSDL fájl nevével lesz azonos. Az előbbi példa esetén: Szolgaltatas.php - Megírhatod a saját WSDL cliens oldali PHP programod, csak be kell olvasnod az elkészített osztályt és használni. Pl.:
<?php
require_once "wsdlClasses/Szolgaltatas.php";
$service = new Szolgaltatas();
...
?>