<?php
$data = <<<DATA
<texts>
<text>
<paragraph/>
First text
<paragraph/>
Second text
</text>
<text>
<paragraph/>
Third text
<paragraph/>
Fourth text
</text>
</texts>
DATA;
$doc = new DOMDocument();
$doc->loadXML($data);
$xpath = new DOMXpath($doc);
$i = 1;
$expression = "//text/text()";
foreach ($xpath->query($expression) as $text) {
$result = trim($text->nodeValue);
if ($result !== "") {
echo sprintf("%d | %s<br>", $i++, $result);
}
}
- Output for 5.6.0 - 5.6.40, 7.0.0 - 7.0.33, 7.1.0 - 7.1.33, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.30, 8.2.0 - 8.2.25, 8.3.0 - 8.3.13
- 1 | First text<br>2 | Second text<br>3 | Third text<br>4 | Fourth text<br>
preferences:
90.26 ms | 408 KiB | 5 Q