【发布时间】:2010-12-04 07:35:04
【问题描述】:
如何将关联数组转换为 XML 字符串?我found this 但在运行该行时收到错误“调用非对象上的成员函数 addChild()”
$node = $xml->addChild($key);
【问题讨论】:
-
您能否提供代码,包括您对所提供的
ArrayToXML::toXML()的调用?
标签: php xml associative-array
如何将关联数组转换为 XML 字符串?我found this 但在运行该行时收到错误“调用非对象上的成员函数 addChild()”
$node = $xml->addChild($key);
【问题讨论】:
ArrayToXML::toXML() 的调用?
标签: php xml associative-array
使用 PHP Document Object Model:
$xml = new DOMDocument('1.0', 'utf-8');
$root = $xml->createElement('top');
$xml->appendChild($root);
foreach ($arr as $k => $v) {
$node = $xml->createelement($k);
$text = $xml->createTextNode($v);
$node->appendChild($text);
$root->appendChild($node);
}
echo $xml->saveXml();
【讨论】:
如果您想要一个简单的解决方案,PEAR 的 XML_Serialize 非常好。手动执行 DOM 可以说更快。
【讨论】:
这与您执行以下操作的方式非常相似:
while($row = mysql_fetch_assoc($result))
您不能将 $result 用作数组,但您可以通过不同的条目使用 foreach 或 while。
【讨论】:
您是否初始化了 $xml 对象?这可能是你的问题。
【讨论】: