在PHP中合并XML
这里有点问题,似乎无法合并XML DOMDocumet的“我得到了错误”,致命错误:在第27行调用C:\xampp\htdocs\xmltest\xmltest.php中未定义的方法domeElement::importNode()“有人能帮我纠正这段代码吗在PHP中合并XML,php,sql,xml,Php,Sql,Xml,这里有点问题,似乎无法合并XML DOMDocumet的“我得到了错误”,致命错误:在第27行调用C:\xampp\htdocs\xmltest\xmltest.php中未定义的方法domeElement::importNode()“有人能帮我纠正这段代码吗 <?php // include required files include 'XML/Query2XML.php'; include 'MDB2.php'; // prepare xml document $dom = new
<?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);