所有必需的库都设置为肥皂。我正在使用标准WSDL。将我的代码移至灯(Redhat Enterprise)。

$params = array(
    'test1'=>'Testing',
    'test2'=> '1'
);
$soapClient->method1($params);

$soapClient->getLastRequest();

结果:

<test1>Testing</test1>
<test2>false</test2>

这曾经发生过任何人,您是如何解决的?

有帮助吗?

解决方案

我相信问题可能是当WSDL具有定义为布尔值的参数时,Zend_soap_client的方式可能不会正确地将“ true”,“ 1”转换为boolean true。我必须强迫要手动设置数据类型。一旦完成,一切都起作用。

$params = array(
    'test1'=> 'Testing',
    'test2'=> true
);

我相信发生这种情况的原因不得不使用不同版本的PHP进行。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top