Сохранить HTML из элемента в переменную простой HTML-анализатор DOM
Я хочу получить innerHtml от элемента, с простым парсером html dom.
Например:
$s = " <div class="a">
<p>I don't want this stuff</p>
<div class="b">
<input type="button" value="testing">
<p>I want this stuff</p>
</div>
</div> ";
$html = str_get_content($s);
$ret = $html->find('div[class=b']);
Теперь... Я хочу инициализировать другой объект, но с помощью HTML из $ret.
Я пытался с $newSource = $ret[0]->save(), но это не работает. В их документации ничего не говорится о innerHtml или outerHtml, а только innerText.
3 ответа
Решение
В соответствии с документацией, существует способ избавиться от вашей семьи, может быть, он может быть использован как способ избавиться от вашей части.
echo $ret[0]; // this should return your dom fragment
если вы хотите другой объект и $object = $ret[0]
это не то, что вы ищете, это может помочь:
$html = (string) $ret[0]; // convert to html
$newSource = str_get_content($html); // create new object
$ret[0]->innertext
даст вам внутренний HTML-элемент (даже если он называется текст, на самом деле это весь HTML)
Прошло много времени с тех пор, как я использовал класс, но вы пробовали echo $ret->plaintext;