我建立一个网站在PHP文件的一部分。基本上我有一个index.php
页面,它检查查询字符串并从XML提供适当的页面。解析仅在内容存储在XML文件中有外籍人士在PHP
例如,输入www.mysite.com/?page=home
将导致PHP脚本来检查XML文件的<page id="home">
标签粘贴无论是标签内到index.php
。
的<page>
标签的内容保存为HTML,因此:
<xmlroot>
<page id="home">
<h1>An HTML Header Tag!</h1>
<p>This is a paragraph</p>
</page>
[...etc]
</xmlroot>
我希望能够抓住适当的<page>
标签并以某种方式解析的内容。我知道<page>
标记中的所有内容都是有效的HTML,所以我只是想使用expat来运行标记并将它们直接退出。
所以我使用DOMDocument
方法找到正确的<page>
,它工作正常,但内容作为DOM元素返回。 expat解析器需要一个字符串。所以,我需要做的两件事情之一:
神奇的DOM元素转换为保持所有的标签完好,所以我可以在Expat解析器使用的字符串。但是,如果我能做到这一点,我不会需要Expat解析器,我可以附和该转换后的字符串直出....
比外籍其他使用的东西。
顺便说一句,我知道我可以只更换与<
和>
XML中<
和>
,但是这使得代码相当难以阅读和编辑。如果可能,我想避免它。
该死的,我只记得CDATA ...我会试试看。如果我设法做到这一点,我会更新它。 – 2011-12-14 08:56:26
好的使用CDATA解决了它。我会发布完整的答案,以帮助其他遇到同样问题的人。它将不得不等待,直到stackoverflow让我,但是,这将在大约7个小时... :-) – 2011-12-14 09:05:23