- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我的目标是能够创建一个可以包含如下项目的 soap 请求:
<flexFields>
<names>
<names>IAG Group</names>
<names>Ticket #</names>
</names>
</flexFields>
但是,我能想到的 soapvar 和 soapparam 的每一种组合都使我无法复制嵌套的“名称”标签。我可以像这样获得 1 个子标签:
$flexFields = array(
'names'=> new SoapVar(
new SoapVar(array('names'=>'IAG Group'),SOAP_ENC_OBJECT),
SOAP_ENC_OBJECT)
);
这会产生:
<flexFields xsi:type="ns2:SoapNamedValues">
<names xsi:type="names">
<names xsi:type="xsd:string">IAG Group</names>
</names>
</flexFields>
但是,如果我使用 SOAP_ENC_OBJECT,我为使名称标签重复而进行的任何尝试都会生成可怕的 BOGUS 元素,或者如果我使用 SOAP_ENC_ARRAY,则将每个项目包装在另一个“项目”元素中,这也是不可取的。
我知道我可以手动创建我想要的内容并使用 XSD_ANYXML 加载它,但这接近于违背使用 SOAP 库的目的。
任何人都可以提供一个示例来说明如何完美平衡 soapvar/soapparam + 数组嵌套以使其实际工作吗?或者我是在用 PHP 的 SOAP 库尝试不可能的事情?
最佳答案
我有类似的问题,试试这个:
$Names=array();
$Names[]=new SoapVar("IAG Group",XSD_STRING,null,null,'names');
$Names[]=new SoapVar("Ticket #",XSD_STRING,null,null,'names');
$BigNames=new SoapVar($Names,SOAP_ENC_OBJECT,null,null,'Names');
这将创建 SoapVar 对象的数组($Names)并将它们放置在 BigNames 对象中,创建如下输出:
<Names>
<names>IAG Group</names>
<names>Ticket #</names>
</Names>
然后您可以为 FlexFields 创建另一个 SoapVar 对象,但是由于某些原因您不能将一个 SoapVar 对象直接放入另一个对象中,它必须存储在一个数组中...
我想这样做:
$FlexFields=new SoapVar($BigNames,SOAP_ENC_OBJECT,null,null,'FlexFields');
这个有效:
$FF=array($BigNames);
$FlexFields=new SoapVar($FF,SOAP_ENC_OBJECT,null,null,'FlexFields');
关于php - SOAP 中的 SoapVar/Param 和嵌套、重复元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4855677/
我正在尝试使用函数“SoapVar”发布我的 SoapHeader。当我打印变量的信息时,我可以看到发布的数据不正确: SoapHeader Object ( [namespace] => h
有没有人知道如何向 SoapVar 对象添加属性?看起来这很简单,但我无法接受/工作。 我查看了 PHP 文档和以下 stackoverflow 问题: Documentation on SoapVa
我正在尝试向 soap 请求添加一些属性。 PHP.net ( http://php.net/manual/en/soapvar.soapvar.php ) 和 here 上评分最高的评论和 here
我想创建具有如下属性的 soapVars: yyy 这是否可以通过 SoapVar 构造函数实现,但不使用 XSD_ANYXML 和原始 xml 字符串? 最佳答案 最好的方法是: 结果是: yyy
我需要在我的 SOAP 请求中包含此节点(使用 1.1): ricky@email.net password 所以我有以下 PHP: $client = new SoapClient("ht
在 PHP 中,我们有 SoapVar 和 SoapParam 类。我已经困惑很久了,因为在 php.net 上没有关于它们的合适文档。 今天我惊讶地发现这些行将在 XML 输入中产生完全相同的结果:
如何向 PHP SoapVar 对象添加属性? (PHP5、SoapClient、SoapVar) 我有一个 SOAP 客户端请求情况,其中有重复的部分(“答案”),每个部分都有一个问题和选择。这都是
我的目标是能够创建一个可以包含如下项目的 soap 请求: IAG Group Ticket # 但是,我能想到的 soapvar 和 soapparam 的每一种组合
我必须使用 SoapClient 对象调用 SOAP Web 服务。其中一个参数必须包含 CDATA 部分中包含的一些 XML,如下所示: baz]]> 注意节点命名空间,这是我痛苦的根源......
谁能解释一下如何在 php 中使用 soapvar 为 anytype 参数分配类型?
这个问题涉及在 PHP SOAP 客户端中使用 SoapParam 和 SoapVar 来处理重复元素,其中请求不能被构造为关联数组。更具体地说,它解决了将 SoapParam/SoapVar 用于复
我是一名优秀的程序员,十分优秀!