PHP SoapClient 请求 - 数组结构
PHP SoapClient Request - Array Structure
我已经成功地使用 PHP 和 SoapClient 将请求传递给使用数组的第三方 API。通过转储来自 SoapClient 的请求,将 XML 数据传递给 API.
现在我遇到了 <extendedData> 所需的 XML 结构,我在作为数组传递时遇到了问题;
<TypeID>int</TypeID>
<FooID>int</FooID>
<BarID>int</BarID>
<extendedData>
<Service_CreateFields>
<FieldName>my string 1</FieldName>
<FieldValue>my string 2</FieldValue>
<Comments>my string 3</Comments>
</Service_CreateFields>
<Service_CreateFields>
<FieldName>my string 4</FieldName>
<FieldValue>my string 5</FieldValue>
<Comments>my string 6</Comments>
</Service_CreateFields>
</extendedData>
我尝试了以下数组,但它无法生成包含两个或更多 <Service_CreateFields>
的 XML 请求
$data = array(
"TypeID" => "11",
"FooID" => "22",
"BarID" => "33",
"extendedData" => array(
"Service_CreateFields" => array(
"FieldName" => "my string 1",
"FieldValue" => "my string 2",
"Comments" => "my string 3",
),
"Service_CreateFields" => array(
"FieldName" => "my string 4",
"FieldValue" => "my string 5",
"Comments" => "my string 6",
),
),
);
有没有人有这方面的经验?
尝试将每个 child 包装在它自己的数组中:
$data = array(
"TypeID" => "11",
"FooID" => "22",
"BarID" => "33",
"extendedData" => array(
"Service_CreateFields" => array(
array(
"FieldName" => "my string 1",
"FieldValue" => "my string 2",
"Comments" => "my string 3",
),
array(
"FieldName" => "my string 4",
"FieldValue" => "my string 5",
"Comments" => "my string 6",
)
)
)
);
我已经成功地使用 PHP 和 SoapClient 将请求传递给使用数组的第三方 API。通过转储来自 SoapClient 的请求,将 XML 数据传递给 API.
现在我遇到了 <extendedData> 所需的 XML 结构,我在作为数组传递时遇到了问题;
<TypeID>int</TypeID>
<FooID>int</FooID>
<BarID>int</BarID>
<extendedData>
<Service_CreateFields>
<FieldName>my string 1</FieldName>
<FieldValue>my string 2</FieldValue>
<Comments>my string 3</Comments>
</Service_CreateFields>
<Service_CreateFields>
<FieldName>my string 4</FieldName>
<FieldValue>my string 5</FieldValue>
<Comments>my string 6</Comments>
</Service_CreateFields>
</extendedData>
我尝试了以下数组,但它无法生成包含两个或更多 <Service_CreateFields>
的 XML 请求$data = array(
"TypeID" => "11",
"FooID" => "22",
"BarID" => "33",
"extendedData" => array(
"Service_CreateFields" => array(
"FieldName" => "my string 1",
"FieldValue" => "my string 2",
"Comments" => "my string 3",
),
"Service_CreateFields" => array(
"FieldName" => "my string 4",
"FieldValue" => "my string 5",
"Comments" => "my string 6",
),
),
);
有没有人有这方面的经验?
尝试将每个 child 包装在它自己的数组中:
$data = array(
"TypeID" => "11",
"FooID" => "22",
"BarID" => "33",
"extendedData" => array(
"Service_CreateFields" => array(
array(
"FieldName" => "my string 1",
"FieldValue" => "my string 2",
"Comments" => "my string 3",
),
array(
"FieldName" => "my string 4",
"FieldValue" => "my string 5",
"Comments" => "my string 6",
)
)
)
);