0

我遇到了一个问题,需要非常快地解决它。我有一个从 xml 文件中获取值的 php 代码,但我无法使用数据库制作动态 xml。我的 PHP 版本是 5.2,我的 xml 解析代码是:

<?php
include("system/connect.php");
$q = mysqli_query($link, "select * from elements");
$xml = new XMLWriter();
$xml->openURI("php://output");
$xml->startDocument();
$xml->setIndent(true);
$xml->startElement('link');

while(null !== ($row = mysqli_fetch_assoc($q))) {
   $xml->startElement("title");
   $xml->writeRaw($row['name']);
   $xml->endElement();

   $xml->startElement("id");
   $xml->writeRaw($row['id']);
   $xml->endElement();

   $xml->startElement("img");
   $xml->writeRaw("images/elements/".$row['name'].".jpg");
   $xml->endElement();


} 
$xml->endElement();
header('Content-type: text/xml');
$xml->flush();
?>

我到底想要什么?我想将化学元素从数据库解析到 xml,比如

 <pages>
   <link>
     <title>Hydrogen</title>
     <id>1</id>
     <img>images/elements/Hydrogen.jpg</img>
  </link>
</pages>

输出现在显示:THIS

4

1 回答 1

0

$xml->startElement('link');应该在循环内,以及$xml->endElement();

您还需要添加$xml->startElement('pages');外部(与相应的endElement

于 2013-09-26T15:25:16.123 回答