SOAP — протокол обмена структурированными сообщениями в распределённой вычислительной среде. Первоначально SOAP предназначался, в основном, для реализации удалённого вызова процедур (RPC), а название было аббревиатурой: Simple Object Access Protocol — простой протокол доступа к объектам. Сейчас протокол используется для обмена произвольными сообщениями в формате XML, а не только для вызова процедур. Официальная спецификация последней версии 1.2 протокола никак не расшифровывает название SOAP. SOAP является расширением протокола XML-RPC.
Итак, делаем proxy-class
Так вот, столкнулся с задачей, где нужно использовать вебсервис. Вообще говоря разработчики рнр5 максимально упростили работу с сервисом. Ввели SoapClient и использовать проще простого.
<?
$cl=new SoapClient("wsdl");
$cl->functionname();
...
Все ничего, но надо знать имена функции это раз. Второе, программируя в какой-нить IDE есть автокомлит, который показывает функции класса Я начал копать в сторону этого, потому как на память помнить функции глупо.
Но к сожалению ничего не нашел. Порылся в pear но там по сути нет ничего чтобы мне помогло.
В итоге решил написать скрипт, который бы на основании заданного WSDL создает класс с методами, параметрами и phpDoc для удобства.
Для примера задаем простейший WSDL файл и посмотри как бы делали просто и через генератор класса.
UPD WSDL ws.cdyne.com/emailverify/Emailvernotestemail.asmx?wsdl содержит больше функций, я знаю, но в силу того, что РНР не поддерживает перегрузку функций, то в данный момент я игнорирую повторы. В дальнейшем введу fucn1, func2, func3 которые будут по сути func но с разными параметрами. Спасибо за понимание