Добро пожаловать!
Кажется, вы хотите проанализировать HTML, используя DOMDocument
метод.Если это так, вы можете создать новый объект, например:
$dir = '<div class="one">one<div>
<div class="data">mydata</div>
get this text
<div class="two">two</div>';
$dom = new DOMDocument();
$dom->loadHTML($dir);
$xpath = new DOMXpath($dom);
$res = $xpath->document->documentElement->textContent;
$textNodes = explode(PHP_EOL, $res);
foreach ($textNodes as $key => $text) {
if ($text == 'mydata') {
echo $textNodes[$key + 1];
break;
}
}
Затем вы можете делать все остальное, что вы хотите сделать с документом.
Вывод:
get this text
Документ
Если вы var_dump($xpath->document->documentElement);
, вы можете узнать, как вы можете использовать атрибуты объекта documentElement:
twoobject(DOMElement)#3 (18) {
["tagName"]=>
string(4) "html"
["schemaTypeInfo"]=>
NULL
["nodeName"]=>
string(4) "html"
["nodeValue"]=>
string(20) "one
mydata
two
three"
["nodeType"]=>
int(1)
["parentNode"]=>
string(22) "(object value omitted)"
["childNodes"]=>
string(22) "(object value omitted)"
["firstChild"]=>
string(22) "(object value omitted)"
["lastChild"]=>
string(22) "(object value omitted)"
["previousSibling"]=>
string(22) "(object value omitted)"
["nextSibling"]=>
NULL
["attributes"]=>
string(22) "(object value omitted)"
["ownerDocument"]=>
string(22) "(object value omitted)"
["namespaceURI"]=>
NULL
["prefix"]=>
string(0) ""
["localName"]=>
string(4) "html"
["baseURI"]=>
NULL
["textContent"]=>
string(20) "one
mydata
two
three"
}