$content = '';
foreach($entry as $element) {
if (Это ненужный узел первого уровня?) {
// Тогда пропускаем его
continue;
}
else if {
// Это нужные узлы - запишем их в объект
$content ( <-- здесь должен быть объект) .= $element;
}
}$subcontent = '';
for ($i = $content->length; --$i >= 0;) {
if ($content->item($i)->nodeName === 'span') {
continue;
}
else {
$subcontent .= $dom->saveHTML($content->item($i));
}
}
echo $subcontent;else if {
$content ( <-- здесь должен быть объект) .= $element;
}$content .= $element;$content .= $dom->$element;$content = '';
foreach($entry as $element) {
//////////////////////////////////////////////////////////////////
// Как здесь вернуть объект (в переменную $content), а не строку?
//////////////////////////////////////////////////////////////////
$content .= $dom->saveHTML($element); // ???
}div или span c нужным атрибутом. Как заставить работать такое (более точное) условие xpath:if (! $xpath->evaluate( "self::div[contains(@class, 'foo' )]", $element ) ) {}Если нужно просто заменить, то зачем нужна переменная $content?
<body>
<?php echo $content; ?>
</body>$includes = $element->childNodes; <a href="адрес">содержимое ссылки</a><a href="' . $href . '">' . $includes . '</a>foreach($elements as $element) {
if ($element->nodeName === 'a') {
if ($element->hasAttribute('href')) {
$href = $element->getAttribute('href');
$includes = $element->childNodes;
$newElement = $dom->createTextNode('<a href="' . $href . '"></a>');
$element->parentNode->replaceChild($newElement, $element);
}
$content .= $dom->saveHTML($element);
continue;
}
else { $content .= $dom->saveHTML($element); }
}
Ошибка в логах: