Я искал решения для этого вопроса, но каждый, который я нашел, и попытка не работает.
Я пытаюсь получить содержимое div из темы форума.
Я пытался использовать preg_match, и это отображало только «Массив», тогда я пытался использовать этот метод
$html = file_get_contents("http://www.lcs-server.co.uk/forum/index.php/topic,$id_topic");
$dom = new DOMDocument;
$dom->loadHTML($html);
$element = $dom->getElementById("msg_$id_msg");
var_dump($element);
Это покажет "объект (DOMElement) # 1 (0) {}"
$ id_topic и $ id_msg определены выше этого кода, взятого из базы данных форума. Я действительно пытался взять сообщение из базы данных форума, но в нем отображались теги BB-кода, я хотел бы, чтобы оно захватывало содержимое сообщения и отображало его в HTML, как оно отображается в самом сообщении форума.
Это код, который я сейчас использую и дает мне «Неустранимая ошибка: невозможно повторно объявить DOMinnerHTML ()»
$html = file_get_contents("http://www.lcs-server.co.uk/forum/index.php/topic,$id_topic");
$dom = new DOMDocument;
$dom->loadHTML($html);
$domelement = $dom->getElementById("msg_$id_msg");
foreach ($domelement as $element)
{
echo DOMinnerHTML($element);
}
function DOMinnerHTML($DOMelement)
{
$innerHTML = "";
$children = $DOMelement->childNodes;
foreach ($children as $child)
{
$tmp_dom = new DOMDocument();
$tmp_dom->appendChild($tmp_dom->importNode($child, true));
$innerHTML.=trim($tmp_dom->saveHTML());
}
return $innerHTML;
}