为什么,我收到带有注释的 $start var 的致命错误?
Why, I am getting a Fatal Error with commented $start var?
当我这样使用 $start var 时:
$start = "<?xml version='1.0' encoding='utf-8'?/>";
我收到一个致命错误:
Fatal error: Uncaught Exception: String could not be parsed as XML in /home/users/....../test.php:6 Stack trace: #0 /home/users/....../test.php(6): SimpleXMLElement->__construct('<?xml version='...') #1 {main} thrown in /home/users/....../test.php on line 6
如何为 XML 生成格式良好的 XML 标签?
$start = "<xml version='1.0' encoding='utf-8' />";
//$start = "<?xml version='1.0' encoding='utf-8'?/>";
$gmXML = new SimpleXMLElement($start);
$offers = $gmXML->addChild('offers');
Header('Content-type: text/xml;');
echo $gmXML->asXML();
我需要的是:
<?xml version='1.0' encoding='utf-8'?>
问题是 <?xml version='1.0' encoding='utf-8'?/>
(尽管其中有一个小错误)实际上并没有定义 XML 元素,因为它没有根节点。
使用您当前的代码,您必须将 <offers>
元素添加到 XML 以为其提供实际的元素内容...
$start = "<?xml version='1.0' encoding='utf-8'?><offers />";
$gmXML = new SimpleXMLElement($start);
Header('Content-type: text/xml;');
echo $gmXML->asXML();
另请注意定义的结尾是 ?>
而不是 ?/>
作为您的其他版本 XML...
$start = "<xml version='1.0' encoding='utf-8' />";
这实际上声明了一个名为<xml>
的根节点。
当我这样使用 $start var 时:
$start = "<?xml version='1.0' encoding='utf-8'?/>";
我收到一个致命错误:
Fatal error: Uncaught Exception: String could not be parsed as XML in /home/users/....../test.php:6 Stack trace: #0 /home/users/....../test.php(6): SimpleXMLElement->__construct('<?xml version='...') #1 {main} thrown in /home/users/....../test.php on line 6
如何为 XML 生成格式良好的 XML 标签?
$start = "<xml version='1.0' encoding='utf-8' />";
//$start = "<?xml version='1.0' encoding='utf-8'?/>";
$gmXML = new SimpleXMLElement($start);
$offers = $gmXML->addChild('offers');
Header('Content-type: text/xml;');
echo $gmXML->asXML();
我需要的是:
<?xml version='1.0' encoding='utf-8'?>
问题是 <?xml version='1.0' encoding='utf-8'?/>
(尽管其中有一个小错误)实际上并没有定义 XML 元素,因为它没有根节点。
使用您当前的代码,您必须将 <offers>
元素添加到 XML 以为其提供实际的元素内容...
$start = "<?xml version='1.0' encoding='utf-8'?><offers />";
$gmXML = new SimpleXMLElement($start);
Header('Content-type: text/xml;');
echo $gmXML->asXML();
另请注意定义的结尾是 ?>
而不是 ?/>
作为您的其他版本 XML...
$start = "<xml version='1.0' encoding='utf-8' />";
这实际上声明了一个名为<xml>
的根节点。