【问题标题】:Creating WSDL output from PHP DOM从 PHP DOM 创建 WSDL 输出
【发布时间】:2020-09-12 01:38:09
【问题描述】:

我是新来的,所以请多多包涵。我正在尝试从 PHP DOM 创建一个 WSDL 文件,并将其用于我的标签:

$element = $XMLDoc->createElement( 'soap:bodysec');
$XMLDoc->appendChild($element);
$element = $XMLDoc->createElement( 'ns:line', text');
$XMLDoc->appendChild($element);

这给了我: <Bodysec/> <Line> Text </line>

我愿意

<bodysec>
<Line> Text </line>
<\bodysec>

我如何做到这一点?

【问题讨论】:

  • 当它只显示Text时,如果这是在网页上,那么查看源代码,因为其他部分可能只是被视为标记。
  • btw 你应该DOMDocument:createElementNS() 来创建带有命名空间的元素。

标签: php xml dom wsdl


【解决方案1】:

添加第二个元素时,您只是将其附加到文档中,而不是新创建的&lt;bodysec&gt; 元素......

$XMLDoc->appendChild($element);

您需要确定在何处添加任何新元素...

$bodysec = $XMLDoc->createElement( 'soap:bodysec');
$XMLDoc->appendChild($element);
$line = $XMLDoc->createElement( 'ns:line', 'text');
$bodysec->appendChild($line);

我倾向于做的一件事是为我分配的变量使用标签名称,这很有帮助,正如您在最后一行中看到的那样,它显示了将行添加到 bodysec 元素的逻辑。

【讨论】:

  • 将第二行改为:$XMLDoc->appendChild($bodysec);然后它按我想要的方式工作。谢谢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2013-01-31
  • 1970-01-01
  • 2016-11-22
  • 2014-05-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多