在 PHP 7 中生成用于 SoapClient 调用的数组
Generate an array for SoapClient call in PHP 7
我有这个 xml 调用,它在 soap 中运行良好 ui。
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<globalSearch xmlns="http://v4.websvc.customer.com/">
<arg0 xsi:type="ns1:searchCriteriaDTO" xmlns=""
xmlns:ns1="http://v4.websvc.customer.com/">
<name xsi:type="xsd:string">bouwy</name>
<firstName xsi:type="xsd:string"></firstName>
<postalCode xsi:type="xsd:string"></postalCode>
<cityOrProvince xsi:type="xsd:string">lens</cityOrProvince>
<country xsi:type="xsd:string">UA</country>
<buNumber xsi:type="xsd:int">023</buNumber>
<maxNumberOfResults xsi:type="xsd:int">30
</maxNumberOfResults>
<detailedSearch xsi:type="xsd:boolean">true</detailedSearch>
<deletedAlso xsi:type="xsd:boolean">false</deletedAlso>
</arg0>
</globalSearch>
</soapenv:Body>
我不明白如何在 php 中建立一个数组来调用:
$soap = new SoapClient($wsdl, $options);
$data = $soap->globalSearch($params);
in $params 应该是这个特定格式的数组。
我试过了,但得到了服务器的响应"Fault occurred while processing"
$params = array (
'arg0' => array (
'name' => 'bouwy',
'firstName' => '',
'postalCode' => '',
'cityOrProvince' => 'lens',
'country' => 'UA',
'buNumber' => '023',
'maxNumberOfResults ' => '30',
'detailedSearch ' => 'true',
'deletedAlso' => 'false'
)
);
求助
所以,我修复了数组,它起作用了
$params = array (
'arg0' => array (
'searchCriteriaDTO' => '',
'name' => 'bouwy',
'firstName' => '',
'postalCode' => '',
'cityOrProvince' => 'lens',
'country' => 'UA',
'buNumber' => '023',
'maxNumberOfResults ' => '30',
'detailedSearch ' => 'true',
'deletedAlso' => 'false',
'any' => ''
)
);
感谢大家
我有这个 xml 调用,它在 soap 中运行良好 ui。
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<soapenv:Body>
<globalSearch xmlns="http://v4.websvc.customer.com/">
<arg0 xsi:type="ns1:searchCriteriaDTO" xmlns=""
xmlns:ns1="http://v4.websvc.customer.com/">
<name xsi:type="xsd:string">bouwy</name>
<firstName xsi:type="xsd:string"></firstName>
<postalCode xsi:type="xsd:string"></postalCode>
<cityOrProvince xsi:type="xsd:string">lens</cityOrProvince>
<country xsi:type="xsd:string">UA</country>
<buNumber xsi:type="xsd:int">023</buNumber>
<maxNumberOfResults xsi:type="xsd:int">30
</maxNumberOfResults>
<detailedSearch xsi:type="xsd:boolean">true</detailedSearch>
<deletedAlso xsi:type="xsd:boolean">false</deletedAlso>
</arg0>
</globalSearch>
</soapenv:Body>
我不明白如何在 php 中建立一个数组来调用:
$soap = new SoapClient($wsdl, $options);
$data = $soap->globalSearch($params);
in $params 应该是这个特定格式的数组。
我试过了,但得到了服务器的响应"Fault occurred while processing"
$params = array (
'arg0' => array (
'name' => 'bouwy',
'firstName' => '',
'postalCode' => '',
'cityOrProvince' => 'lens',
'country' => 'UA',
'buNumber' => '023',
'maxNumberOfResults ' => '30',
'detailedSearch ' => 'true',
'deletedAlso' => 'false'
)
);
求助
所以,我修复了数组,它起作用了
$params = array (
'arg0' => array (
'searchCriteriaDTO' => '',
'name' => 'bouwy',
'firstName' => '',
'postalCode' => '',
'cityOrProvince' => 'lens',
'country' => 'UA',
'buNumber' => '023',
'maxNumberOfResults ' => '30',
'detailedSearch ' => 'true',
'deletedAlso' => 'false',
'any' => ''
)
);
感谢大家