Я новичок в DOMXPath, но пытаюсь узнать больше. В настоящее время у меня есть такая HTML-структура:
<span class="1">
<div class="headerClass">
Here you have <span class="spanClass1">some text</span>. And here there is <span class="spanClass2">even more text</span>
</div>
<table class="tableClass" id="tableID">
<tr>
<td>some text</td>
<td>some text</td>
<td>some text</td>
</tr>
<tr>
<td>some text</td>
<td>some text</td>
<td><a href="http://www.website1.com" target="_blank">My Link</a></td>
</tr>
<tr>
<td>some text</td>
<td>some text</td>
<td><a href="http://www.website2.com" target="_blank">My Link</a></td>
</tr>
</table>
</span>
<span class="2">
<div class="headerClass">
Here you have <span class="spanClass1">some text</span>. And here there is <span class="spanClass2">even more text</span>
</div>
<table class="tableClass" id="tableID">
<tr>
<td>some text</td>
<td>some text</td>
<td>some text</td>
</tr>
<tr>
<td>some text</td>
<td>some text</td>
<td><a href="http://www.website1.com" target="_blank">My Link</a></td>
</tr>
<tr>
<td>some text</td>
<td>some text</td>
<td><a href="http://www.website2.com" target="_blank">My Link</a></td>
</tr>
</table>
</span>
... and the spans continue: 3, 4, 5 ... etc
Чтобы получить этот HTML-код из исходного файла, я использую это:
$oDomXpath = new DOMXpath($oDom);
$query = "//span[number(@class)=number(@class)]";
$oDomObject = $oDomXpath->query($query);
foreach ($oDomObject as $oObject) {
// WHAT GOES HERE????
}
Мне нужно сохранить в массиве следующие значения:
- Обычный текст всех
<div class="headerClass">
без тегов html. - Текст всего
<span class="spanClass2">
- Все URL-адреса внутри таблиц. Таблицы могут иметь любое количество строк от 0 до многих.
Как я могу этого добиться? Что мне нужно было поместить в цикл foreach? Мне обязательно нужно запускать другой запрос ??
Заранее большое спасибо за вашу помощь!