首页  >  文章  >  数据库  >  如何使用 PHP 将 MySQL 数据输出为 XML?

如何使用 PHP 将 MySQL 数据输出为 XML?

Susan Sarandon
Susan Sarandon原创
2024-11-10 00:13:02138浏览

How to Output MySQL Data as XML Using PHP?

通过 PHP 查询 MySQL 数据库并输出 XML

问题:
提取特定列的 XML 输出使用 PHP 从 MySQL 数据库表中获取('udid' 和 'country')。

解决方案:

要实现此目的,请按照以下步骤操作:

  1. 建立数据库连接:使用 PHP 的 mysql_connect() 和 mysql_select_db() 函数连接到 MySQL 数据库。
  2. 执行 MySQL 查询:使用 mysql_query( ) 函数来执行从数据库表中检索所需列的 SELECT 查询。
  3. 初始化 XMLWriter: 创建一个 XMLWriter 对象以生成 XML 输出。
  4. 开始 XML 文档: 通过调用 XMLWriter 对象的 startDocument() 方法开始 XML 文档。
  5. 开始根元素: 创建 XML 文档的根元素(例如, '国家')。
  6. 循环遍历 MySQL 结果: 迭代 MySQL 查询的结果并将每一行添加为根元素中的子元素。
  7. 添加属性和元素: 对于每一行,设置属性并写入相应列的数据。
  8. 结束 XML 文档: 使用以下命令关闭根元素和 XML 文档XMLWriter 对象的 endElement() 和 endDocument() 方法。

PHP 代码:

mysql_connect('server', 'user', 'pass');
mysql_select_db('database');

$sql = "SELECT udid, country FROM table ORDER BY udid";
$res = mysql_query($sql);

$xml = new XMLWriter();

$xml->openURI("php://output");
$xml->startDocument();
$xml->setIndent(true);

$xml->startElement('countries');

while ($row = mysql_fetch_assoc($res)) {
  $xml->startElement("country");

  $xml->writeAttribute('udid', $row['udid']);
  $xml->writeRaw($row['country']);

  $xml->endElement();
}

$xml->endElement();

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

输出:

<?xml version="1.0"?>
<countries>
 <country udid="1">Country 1</country>
 <country udid="2">Country 2</country>
 ...
 <country udid="n">Country n</country>
</countries>

以上是如何使用 PHP 将 MySQL 数据输出为 XML?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn