<foo>
a
<bar> b </bar>
</foo>
兩個$foo->textContent
和$foo->nodeValue
回報a b
。獲取節點的文本內容,而忽略子節點
我怎樣才能得到公正a
(在從節點的子節點的文字,沒有文字)
<foo>
a
<bar> b </bar>
</foo>
兩個$foo->textContent
和$foo->nodeValue
回報a b
。獲取節點的文本內容,而忽略子節點
我怎樣才能得到公正a
(在從節點的子節點的文字,沒有文字)
使用firstChild
:
$foo->firstChild->textContent;
試試這個代碼
$doc = new DOMDocument();
$doc->loadXML('<root><foo>a<bar>b</bar></foo><foo>bar</foo></root>');
$foos = $doc->getElementsByTagName('foo');
foreach($foos as $v){
echo $v->firstChild->wholeText.'<br />';
}
,因爲在第一<foo>
一個「文本節點」'之後有文字?這也會得到那些文字嗎? –
jonhopkins
<bar>
之前的DOMNode
的firstChild
屬性返回DOMText
對象怎麼辦如果在'不,但您可以使用'lastChild'來代替。更好的方法是將文本包裝到一個元素中。 – zessx