2015-07-07 1 views
0

Вот краткий код, который я борюсь с:Как получить текст первого уровня из узла PHP?

<a>value<span>no need</span><a> 

Я в настоящее время работает над DOMXPath, что мне нужно, чтобы получить непосредственное значение тега, который является «значение», в то время как я на самом деле не получить дополнительную «нет необходимости» при использовании nodeValue собственности:

$xpath->query('a')->item(0)->nodeValue;//give me "value no need" 

Как получить значение из только первого уровня, исключить вложенный узел. Спасибо!

ответ

1

Ваше выражение должно соответствовать самому текстовому узлу, а не его тегу, поэтому f.e.

$xpath->query('a/text()')->item(0)->nodeValue 

или в качестве альтернативы, вы можете использовать ChildNodes для перехода к текстовому узлу из «» метки:

$xpath->query('a')->item(0)->childNodes->item(0)->nodeValue 
+0

Спасибо! text() на самом деле делает трюк! – user7031

Смежные вопросы