Как получить основной текст элемента по DOMDocument - PullRequest
0 голосов
/ 09 июля 2019

Я хочу получить основной текст элемента без дочерних элементов с DOMDocument.Например,

<span>
This is the main
    <i>more</i>
    <b>extra</b>
<span>

Я получаю текст по

$text=$g->query('//span')[0]->nodeValue;

, но как я могу получить только текстовое значение, которое меньше span.Здесь только This is the main текст, игнорируя любые дочерние элементы.

1 Ответ

2 голосов
/ 09 июля 2019

Используйте тест узла text() :

echo $g->query('//span/text()')[0]->nodeValue;

Вывод:

This is the main

При этом будут найдены только текстовые узлы, которые являются прямыми потомками <span>.

...