duandan9680 2012-07-18 13:28
浏览 110
已采纳

DOMDocument getElementsByTagName不起作用

I'm trying to use the DOMDocument function getElementsByTagName(), but it keeps returning an empty object. I'm using the following code:

// Create some HTML
$output = '
<html>
   <body>
      <a href="foo">Bar</a>
   </body>
</html>';

// Load the HTML
$dom = new DOMDocument;
$dom->loadHTML($output);

// Find all links (a tags)
$links = $dom->getElementsByTagName('a');

var_dump($links); // object(DOMNodeList)#31 (0) { } - empty object

What am I missing? Looking at the documentation, it looks like I'm using the function correctly.

  • 写回答

2条回答 默认 最新

  • duanjucong3124 2012-07-18 13:31
    关注

    That var_dump is just saying that you have a DOMNodeList object. Traverse the list and you'll see it's there:

    foreach( $links as $a) {
         echo $a->nodeName . ' ' . $a->nodeValue;
    }
    

    This would output:

    a Bar 
    

    Since it's an <a> tag, and its contents are Bar.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

悬赏问题

  • ¥15 程序不包含适用于入口点的静态Main方法
  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记