当前位置: 首页 > 面试题库 >

在PHP中合并XML

夏意蕴
2023-03-14
问题内容

这里有些错误,似乎无法合并XML DOMDocumet,这是我收到的错误,“致命错误:在第27行的C:\ xampp \ htdocs \ xmltest\ xmltest.php中调用未定义的方法DOMElement :: importNode()”可以任何人都可以帮助我正确编写此代码…

<?php
// include required files
include 'XML/Query2XML.php';
include 'MDB2.php';

// prepare xml document
$dom = new DomDocument('1.0');

// create tables section
$tables = $dom->appendChild($dom->createElement('tables'));

// create container for tblclients
$tblclients = $tables->appendChild($dom->createElement('tblclients'));

try {
// initialize Query2XML object
$q2x = XML_Query2XML::factory(MDB2::factory('mysql://root:@localhost/db_solconmgr'));

// generate SQL query
$sql = "SELECT ClientID, Client, Contacts, 'Address Line 1' as AddressLine1, 'Address Line 2' as AddressLine2, City, County, 'Zip Code' as ZipCode, Telephone, Fax, Mobile, 'E-mail Address' as EmailAddress, Date FROM tblclients";

// get results as XML
$tblclientsXML = $q2x->getFlatXML($sql);

//$dom = $tblclientsXML;

$node = $tblclients->importNode($tblclientsXML, true);

// send output to browser
header('Content-Type: text/xml');
$dom->formatOutput = true;
echo $dom->saveXML();
} catch (Exception $e) {
echo $e->getMessage();
}
?>

问题答案:

importNode()是属于文档的方法,而不是元素。您要导入 文档$dom),然后追加到 元素$tblclients)。

导入时需要一个 节点 (而$tblclientsXML不是一个节点,它是一个文档),因此导入生成的XML看起来 类似于

$tblclientsElement = $tblclientsXML->documentElement;
$tblclientsXML = $dom->importNode($tblclientsElement, TRUE);
$tblclients->appendChild($tblclientsXML);


 类似资料:
  • 问题内容: 我有2个文件,并且两个文件的结构相似,我想拥有一个。我尝试了许多解决方案,但只有错误-坦白地说,我不知道这些脚本是如何工作的。 : : 我想用以下结构创建一个新文件 我应该怎么做?你能解释一下方法吗?如何处理更多文件?谢谢 编辑 我尝试了什么? 编辑2 遵循Torious的建议,我查看了DOMDocument手册并找到了一个示例: 但是它创建了错误的xml文件: 而且我无法正确使用此文

  • 问题内容: 我有两个json 第一个是 第二个是 我想合并它们并有一个像 有没有办法合并它们?如果需要在JSON中更改结构,对我来说也可以 谢谢。 问题答案: 像应该工作。 官方PHP文档中的 array_merge 官方PHP文档中的 json_decode 编辑: 尝试将第二个参数添加到json_decode。这样会将对象转换为关联数组。

  • 问题内容: 我有两个从JSON转换的数据对象。两者都非常复杂,我想以类似于jQuery使用扩展合并两个对象的方式来合并它们。 例 JSON 1: JSON 2: 合并成 用PHP对象解决此问题的最佳方法是什么。 问题答案: 将每个JSON字符串解码为一个关联数组,合并结果并重新编码 更新: 如果您有特定的合并要求,则需要编写自己的合并功能。我在下面写了一篇满足您问题中要求的书。如果您有其他未提及的

  • 做任务的时候出了点问题。 我有两个数组,第一个数组显示从20到60随机数。第二个数组显示从40到80数字。 我需要创建第三个数组,它将是两个数组的合并,但没有重复数组。 我的代码如下所示: 我可能知道我可以用类似的方法来解决这个问题 但我不知道如何实施。或者也许有更简单的选择去做,但我坚持,只是试图找到一种方法去做它。可能已经为这个任务准备好了功能? 有什么办法让它更精确吗?

  • 问题内容: 在Linux Debian系统上使用PHP 5.2将几个MP3文件的内容合并为一个最简单的方法是什么?我找到了一些本应仅在PHP中执行的脚本,但它们似乎有问题。也许有一种方法可以使用命令行程序来完成此任务,而我可以将其安装在Linux Debian机器上? 问题答案: 检查以下内容:http : //lists.mplayerhq.hu/pipermail/ffmpeg- user/2

  • 问题内容: 我有一个带有4列的(example-)数据框: 我现在想将B,C和D列合并/合并到新的E列,如本例所示: 我在这里发现了一个非常类似的问题,但这在A列的末尾添加了合并的列B,C和D: 感谢帮助。 问题答案: 选项1 使用和 选项2 使用分配和 选项3 最近,我喜欢第3个选项。 使用