You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为SOAP的Subject元素添加SbjKey属性并修复闭合标签异常

解决PHP SOAP请求中闭合标签带多余属性的问题

目标SOAP结构

<Subject SbjKey="1">
    <SbjType>Y</SbjType>
</Subject>

错误实现代码

为给Subject元素添加SbjKey属性,我编写了如下PHP代码:

$params->{'Subject SbjKey="1"'} =  new \stdClass();
$params->{'Subject SbjKey="1"'}->SbjType  = 'Y';

异常生成结果

最终生成的SOAP结构出现异常,闭合标签也错误带上了SbjKey属性:

<Subject SbjKey="1">
<SbjType>Y</SbjType>
</Subject SbjKey="1">

我使用$client->__soapCall方法发送请求,请问该如何去除闭合标签中的SbjKey="1"?

临时可行的解决方法

之后我找到了一种临时可用的解决写法:

$SubjectVar = new SoapVar(
"<Subject SbjKey=\"1\"> 
    <SbjType>Y</SbjType> 
</Subject>"
, XSD_ANYXML);

$params->Subject = $SubjectVar;

内容的提问来源于stack exchange,提问作者FoxChiffa

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.04 01:52:20