Приветствую. Есть класс InvestService. Вот таким кодом, класс превращается в сервис PHP: <?php if(isset($_GET['wsdl'])) { $wsdl = new Zend_Soap_AutoDiscover('Zend_Soap_Wsdl_Strategy_ArrayOfTypeComplex'); $wsdl->setClass('InvestService'); $wsdl->handle(); } else { $server = new Zend_Soap_Server('*****/server.php?wsdl'); $server->setClass('InvestService'); $server->setClassmap($classmap); $server->handle(); } ?> Если вывести доступные методы сервиса PHP: <?php $client = new Zend_Soap_Client('****/server.php?wsdl'); $client->setClassmap($classmap); print nl2br(print_r($client->getFunctions(), true)); ?> то получится примерно следующее: HTML: [0] => boolean checkEmail(string $email) [1] => boolean checkUsername(string $username) [2] => list(Errors $errors, boolean $result) register(string $username, string $password) [3] => RatingEntries getRating(integer $investitionPreference, integer $investitionHorizon) ..... Вопрос: как вернуть тип данных list, представленный в листинге под индексом 2, если известно что тип возвращаемого значения задается в комментариях к методу меткой @return. Т.е если написать в методе класса сервиса PHP: <?php class A { /** * @param integer $string * @return string */ public function foo($string) { return 'Returns ' . $string; } } ?> то A::foo() вернет тип данных string. Заранее благодарен всем :!:
в пхп всё array. попробуй. а примера использования нету в описании сервера? list(Errors $errors, boolean $result) наверное array(array(Errors $errors, boolean $result), array(Errors $errors, boolean $result), ..., array(Errors $errors, boolean $result))