代码之家  ›  专栏  ›  技术社区  ›  xenonite

如何用php5和dom解析HTML页面?[复制品]

  •  0
  • xenonite  · 技术社区  · 16 年前

    可能重复:
    How to parse and process HTML with PHP?

    我正在研究一些代码,这些代码应该可以获取给定HTML文档的非常特定的HTML标记的内容。

    $html = "<html>..........truncated.........<div>blablabla<br />xy</div>.....";
    $dom = new DomDocument();
    $dom->loadHTML($html);
    
    $divs = $dom->getElementsByTagName('div');
    
    echo $divs->item(0)->nodeValue.'<br>';
    

    HTML代码只是一个例子,但它显示了我遇到的一个问题:我想获取这个DIV的内容,我需要保留内部标记! nodeValue(以及“textcontent”)所做的是返回正确节点的内容 with all inner tags stripped ( http://docs.php.net/manual/en/class.domnode.php )

    我不知道怎么弄到这个正确的自动取款机…我需要的是相当于javascripts“innerhtml”之类的东西…但我找不到这样的方法:(

    我该怎么做?

    3 回复  |  直到 16 年前
        1
  •  0
  •   Theodore R. Smith    16 年前
        2
  •  1
  •   Andrew67    16 年前

    http://www.linked.com.mt/blog/code/php/php-domnode-tostring-xml/

    $temp_doc = new DOMDocument('1.0', 'UTF-8');
    $temp_node = $temp_doc->importNode($myDomNode, TRUE);
    $temp_doc->appendChild($temp_node);
    $my_node_as_string = $temp_doc->saveHTML();
    
        3
  •  0
  •   Marko    16 年前