我正在尝试在XML中实现以下格式(使用PHP生成):
<ns0:XmlInterchange xmlns:ns0="http://www.website.com" xmlns:ext="http://www.website.com">
<ns0:InterchangeInfo>
<ns0:Date>2017-06-28T11:33:15</ns0:Date>
<ns0:XmlType>Verbose</ns0:XmlType>
<ns0:Source>
<ns0:EnterpriseCode>DSV</ns0:EnterpriseCode>
<ns0:OriginServer>ESB</ns0:OriginServer>
</ns0:Source>
<ns0:EDIOrganisation EDICode="0"/>
</ns0:InterchangeInfo>
</ns0:XmlInterchange>
所以,现在,我只有这个:
$xml = new DOMDocument('1.0', 'UTF-8');
$xml->formatOutput = true;
$rss = $xml->createElement('ns0');
$rss->setAttributeNS('http://www.w3.org/2000/xmlns/', 'xmlns:ns0', 'http://website.com');
$rss->setAttributeNS('http://www.w3.org/2000/xmlns/', 'xmlns:ext', 'http://website.com');
$xml->appendChild($rss);
哪个输出:
<ns0 xmlns:ns0="http://website.com" xmlns:ext="http://website.com"/>
上面的问题是XML
的开头。它必须是:
<ns0:XmlInterchange xmlns:ns0="http://website.com" xmlns:ext="http://website.com"/>
如何将:XmlInterchange
命名空间添加到标记的开头?
答案 0 :(得分:1)
您应该使用:
SELECT (count(main_dish)+count(soup_stew)+count(meat_fish)+count(other)) as total FROM foodlist;
而不是
$rss = $xml->createElementNS('ns0', 'ns0:XmlInterchange');