我有一个XML文件,其中包含一些非常简单的布局结构的文本:
<?xml version='1.0'?>
<page>
<section>
<header>Header</header>
<par>Some paragraph</par>
<par>Another paragraph with <emph>formatting</emph></par>
</section>
</page>
在PHP中,我使用SimpleXML读取此文件(请注意,我故意剥离其他标记!):
$page = file_get_contents("page.xml");
if ($page) {
$stripped = strip_tags($page, "<?xml><page><section><header><par><emph>");
$xml = new SimpleXMLElement($stripped);
}
现在我想迭代XML元素并按照的顺序将它们打印为我的网站的HTML。最终结果应该是以下代码段:
<h1>Header</h1>
<p>Some paragraph
<p>Another paragraph with <i>formatting</i>
我已经通过SimpleXML和XPath进行了编程,并尝试弄清楚如何按顺序迭代XML树 ,以便我可以将原始XML文件消化为HTML输出。我可以产生一些有些期望的结果,但<emph></emph>
已经消失了;我怎么进一步下降到树?到目前为止我的代码:
foreach ($xml->section as $s) {
echo "<h1>" . $s->header . "</h1>";
foreach ($s->par as $p) {
echo "<p>" . $p;
// Do some magic here to ensure <emph> tags are recognized and responded to properly.
}
}
任何提示和指示表示赞赏!谢谢: - )