我已经看到了SimpleXML和节点值有关的其他问题,但未能找到答案我的问题。
我有一个PHP变种包含形成这样一个XML文档:
<div id="container">
<div id="header"></div>
<div id="main">
##CONTENTS## cd <strong>dscsdcsd</strong> sdcsc
<div>my content here</div>
<span>and there</span>
</div>
<div id="footer"> </div>
</div>
我要检索的节点值。但是,下面的代码,我也找回了标签:
$xml = simplexml_load_string($_POST['newsletter_body']);
$att = 'id';
foreach ($xml->children() as $el) {
if($el->attributes()->$att == 'main') {
$body_content = $el->asXml();
}
}
有人能告诉我怎么去只节点值(不使用XPath)?
要清楚,现在我得到:
<div id="main">
##CONTENTS## cd <strong>dscsdcsd</strong> sdcsc
<div>my content here</div>
<span>and there</span>
</div>
我只是想:
##CONTENTS## cd <strong>dscsdcsd</strong> sdcsc
<div>my content here</div>
<span>and there</span>
非常感谢
“节点值”是一个不明确的术语。您要求使用innerXML,而nodeValue通常会使用不带XML标签的内部文本。 – 2011-06-11 07:30:36
@Tomalak>其实,它是。对不起! – simo 2011-06-11 08:24:38
@lenzai>是的,但是,我不明白为什么simplexml作为没有方法来获得内部xml的XML值。 – simo 2011-06-11 09:06:28