PHP,在写入Xml文件时使用explode函数错误

时间:2015-06-23 17:03:45

标签: php xml

我正在尝试将一些位置写入xml文件以便稍后使用它们直到我决定使用explode它然后给出了一个错误:“第1行第2行的错误:额外的内容在文件的最后 下面是第一个错误的页面呈现。“这是代码:

<?php 
$conn=mysqli_connect("localhost", "thecode007", "007","offers") or die(mysql_error());

$query = "SELECT * FROM Branches";
$result = mysqli_query($conn,$query) or die(mysql_error());

 $doc = new DomDocument('1.0');
$node = $doc->createElement("markers");
$parnode = $doc->appendChild($node);

header("Content-type: text/xml");

while($row = mysqli_fetch_array($result))
{
$node = $doc->createElement("marker");
$newnode = $parnode->appendChild($node);
$loc=explode(",",$row);
$newnode->setAttribute("location", $loc[0]);
}

print $doc->saveXML();

?>

1 个答案:

答案 0 :(得分:0)

问题在于爆炸:

$loc=explode(",",$row);

$ row 已经一个数组。爆炸用于将字符串拆分为数组。 如果没有查看为查询返回的数据,这很困难,但假设您希望结果的整个第一列为$ loc,那么只需删除explode()调用并替换为:

$loc = $row[0];

注意,这是非常糟糕的。您应该将select中的*替换为实际列的名称。在这种形式下,您的程序非常脆弱,因为对第一列的更改将改变$ loc中存储的信息。

PS。是的,删除?&gt;在文件的末尾,但这不是问题。