首页 > 解决方案 > 将xml值作为数组传递给soap客户端PHP

问题描述

我有 xml 数据作为数组传递给 SOAPClient 这是我想要传递给 SOAPClient 的 xml 数据

<?xml version="1.0" encoding="UTF-8"?>
<soapenv:Envelope xmlns:soapenv="http://schemas.xmlsoap.org/soap/envelope/" xmlns:cb5="http://tes.com" xmlns:smar="http://tes.com/Search">
   <soapenv:Header />
   <soapenv:Body>
      <cb5:SmartSearchIndividual>
         <cb5:query>
            <smar:InquiryReason>Reason</smar:InquiryReason>
            <smar:InquiryReasonText />
            <smar:Parameters>
               <smar:DateOfBirth>1985-05-01</smar:DateOfBirth>
               <smar:FullName>J Doe</smar:FullName>
               <smar:IdNumbers>
                  <smar:IdNumberPairIndividual>
                     <smar:IdNumber>123456789</smar:IdNumber>
                     <smar:IdNumberType>KTP</smar:IdNumberType>
                  </smar:IdNumberPairIndividual>
               </smar:IdNumbers>
            </smar:Parameters>
         </cb5:query>
      </cb5:SmartSearchIndividual>
   </soapenv:Body>
</soapenv:Envelope>

我将这个xml传递给这样的数组

$params = array(
        'InquiryReason'     =>  'Reason',
        'InquiryReasonText' =>  '',
        'Parameters'            =>  array(
            'DateOfBirth'   =>  '1985-05-01',
            'FullName'      =>  'J Doe',
            'IdNumbers'     =>  array(
                'IdNumberPairIndividual'    =>  array(
                    'IdNumber'      =>  '123456789',
                    'IdNumberType'  =>  'KTP'
                )
            )
        )
    );

$response = $client->SmartSearchIndividual($params);

当我提交这个显示一个错误The formatter threw an exception while trying to deserialize ...。请帮忙。谢谢!

标签: php

解决方案


推荐阅读