SimpleXML访问分隔的文本节点

2022-04-13 00:00:00 php simplexml

我有一个如下所示的XML文件:

...
<MyElement>Introduction:<br />
   ...
</MyElement>
...

有没有办法在该元素的</br>之后返回"Introduction:"并返回其余内容?

我使用的是PHP和SimpleXML。幼稚地使用echo $document->MyElement会显示"介绍:...",它混淆了引言行和内容。


解决方案

SimpleXML没有您从DOMDocument中知道的文本节点的概念(也请参阅this comparison table)。

因此,在PHP中,选项是将<MyElement>元素导入到DOM中,然后在那里执行操作:

 # prints "Introduction:"

 echo dom_import_simplexml($myElement)->firstChild->data;
 //                                          ^      
 //                                          `- is DOMText

相关文章