将元素中的html保存到变量简单的html dom解析器中

时间:2014-07-03 12:59:29

标签: php parsing web-scraping simple-html-dom php-parser

我想从一个元素中获取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']);

现在......我想初始化另一个对象,但是使用来自$ ret。

的html

我尝试使用$ newSource = $ ret [0] - &gt; save(),但它无效。在他们的文档中,它似乎没有关于innerHtml或outerHtml,只是innerText。

3 个答案:

答案 0 :(得分:1)

$ret[0]->innertext

会给你元素的内部HTML(即使它被称为文本,它实际上是整个html)

答案 1 :(得分:0)

自从我上课以来已经有一段时间但是你试过了 echo $ret->plaintext;

答案 2 :(得分:0)

根据文档,有dump your dom的方法,也许可以用作wenn来转储你的一部分。

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