【问题标题】:Getting the Inner HTML of a DomElement in PHP [duplicate]在 PHP 中获取 DomElement 的内部 HTML [重复]
【发布时间】:2011-11-01 15:11:23
【问题描述】:

使用 PHP 的 DOM 函数获取 DOMElement 的 innerHTML(标签和所有内容)的最简单方法是什么?

【问题讨论】:

    标签: php dom


    【解决方案1】:

    内部 HTML

    尝试@trincot建议的方法:

    $html = implode(array_map([$node->ownerDocument,"saveHTML"], iterator_to_array($node->childNodes)));

    外部 HTML

    试试:

    $html = $node->ownerDocument->saveHTML($node);
    

    或 PHP 低于 5.3.6:

    $html = $node->ownerDocument->saveXML($node);
    

    【讨论】:

      【解决方案2】:
      $html = '';
      foreach($parentElement->childNodes as $node) {
         $html .= $dom->saveHTML($node);
      }
      

      CodePad.

      【讨论】:

      • 如果子节点有子节点,这不起作用
      • @babonk 这不是真的。查看 CodePad 的底部。
      • 奇怪,我在本地使用时遇到错误..可能是版本问题
      • @babonk saveHTML() 仅支持 >= 5.3.6。如果使用旧版本,您可能需要使用saveXML()
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2011-02-16
      • 2012-10-06
      • 2018-08-02
      • 2012-01-23
      • 1970-01-01
      • 2012-06-29
      • 1970-01-01
      相关资源
      最近更新 更多