У меня есть такой PHP-код
$html = '<div class="some_class"><table><tr><td>Tr0Td0</td><td>Tr0Td1</td></tr><tr><td>Tr1Td0</td><td>Tr1Td1</td></tr></table></div>';
$html = mb_convert_encoding($html, 'HTML-ENTITIES', 'UTF-8');
$dom = new DOMDocument;
libxml_use_internal_errors(true);
$dom->loadHTML($html);
libxml_use_internal_errors(false);
$xpath = new DOMXpath($dom);
$div = $xpath->evaluate('//div[contains(@class, "some_class")]')[0];
$table = $div->getElementsByTagName('table')[0];
foreach($table->getElementsByTagName('td') as $td) {
if($td->nodeValue == 'Tr0Td1') {
$td->parenNode->nextSibling->setAttribute('class','nextTR');
}
}
echo $dom->saveXML($table);
В цикле foreach()
мне нужно получить строку таблицы, которая является следующей по отношению к строке, в которой находится текущая ячейка. Но яне могу этого сделать, даже получить строку текущей ячейки.В обоих случаях я получаю ошибку 500.
Что не так?