HI我第一次尝试在php中创建一个XML文件,但它的工作方式却不正确我希望
<Markers>
<marker></marker>
<marker></marker>
etc
</Markers>
相反,我有
<markers>
<marker>
<marker>
<marker>
</marker>
</marker>
</marker>
</markers>
<?PHP
require("phpsqlajax_dbinfo.php");
// Start XML file, create parent node
$dom=new DOMDocument("1.0");
$node=$dom->createElement("markers");
$parnode=$dom->appendChild($node);
// Iterate through the rows, adding XML nodes for each
while (odbc_fetch_row($result)){
$node = $dom->createElement("marker");
$newnode = $parnode->appendChild($node);
$newnode->setAttribute("traffic",odbc_result($result,"TRAFFIC"));
$newnode->setAttribute("latitude",odbc_result($result,"LATITUDE"));
$newnode->setAttribute("longitude",odbc_result($result,"LONGITUDE"));
}
echo $dom->saveXML();
我从ODBC连接填充。
我试过环顾网但是在不同的布局上没有遇到很多例子,感谢任何帮助或正确方向的指示。
答案 0 :(得分:0)
无法重现问题。已经简化为没有数据库数据的测试:
// Start XML file, create parent node
$dom=new DOMDocument("1.0");
$node=$dom->createElement("markers");
$parnode=$dom->appendChild($node);
// Iterate through the rows, adding XML nodes for each
for ($i = 0; $i < 3; $i++){
$node = $dom->createElement("marker");
$newnode = $parnode->appendChild($node);
$newnode->setAttribute('foo', 'bar');
}
echo $dom->saveXML();
输出(漂亮):
<?xml version="1.0"?>
<markers>
<marker foo="bar"/>
<marker foo="bar"/>
<marker foo="bar"/>
</markers>
可以测试online