如何为 wcf service 发出 soap 请求 usind ZendSoapClientDotNet


How to make soap request for wcf service usind ZendSoapClientDotNet?

下面是我使用 SOAP 访问 Web 服务的测试代码,这些服务是使用 .NET 开发的。

执行代码时出现异常文件:

...'vendor'zendframework'zendframework'library'Zend'Soap'Client'DotNet.php:199

消息:

*.Net Webservice 参数必须分组到数组中:array("a" => $a, "b" => $b, ...)。*

public function testAction()
{
    $client = new DotNet(
                'http://ip/Services/SomeService.svc?wsdl', 
                 array(
                    'encoding' => 'UTF-8',
                    'soap_version' => SOAP_1_2
                )
        );
        //var_dump($client->getFunctions());
        //var_dump($client->getOptions());
        var_dump($client->call('ValidateUser',array('customercode'=>'Cust','username'=>'Admin','passwork'=>'Admin')));
        die
}

问题出在参数传递上

重新定义代码,如下所示

var_dump($client->call('ValidateUser',array(array('customercode'=>'Cust','username'=>'Admin','passwork'=>'Admin'))));