PHPDOM-如何获取包含超链接的span标记中的内容

PHPDOM-如何获取包含超链接的span标记中的内容,php,Php,我以前做过,但找不到我的代码片段 我想解析一个html文件,并将位于一些span标记之间的所有内容拉入我的浏览器。html中还有其他我不想要的span标记,所以我想我会将解析限制为只有具有相同css类的span标记。有人能给我举个例子吗?谢谢 $tags = $doc->getElementsByTagName('span'); 这是我试图解析的一行html <span class='close'><a href="bla.com/test.htm">test r

我以前做过,但找不到我的代码片段

我想解析一个html文件,并将位于一些span标记之间的所有内容拉入我的浏览器。html中还有其他我不想要的span标记,所以我想我会将解析限制为只有具有相同css类的span标记。有人能给我举个例子吗?谢谢

$tags = $doc->getElementsByTagName('span');
这是我试图解析的一行html

<span class='close'><a href="bla.com/test.htm">test row</a></span>

首次尝试未经测试:

$elts = $doc->getElementsByTagName('span');
foreach ($elts as $elt)
  {
    $className = $elt->getAttribute('class');
    if (array_search('close', explode(' ', $className)))
      {
        // Do things with $elt since it matches.
      }
  }

根据我的观点和经验,它可以通过getElementsByTagName完成??只要使用一些ajax-y函数来调用它,您就有了DOM元素:

嘿,达斯汀,谢谢您的帮助。我几乎可以肯定,有一种方法可以将css类名附加到getElementsByTagName,而不必使用正则表达式。如果我不能从这里的任何人那里得到语法,我肯定会使用你的建议原始答案。我已经有一段时间没有使用PHP了。伙计,谢谢你。它起作用了。我将您的代码修改为在数组中使用,而不是数组搜索,因为我有一个关联数组,数组搜索无法工作。除此之外,它工作得很好。嘿,Ben,我最终想使用这个脚本作为cron作业运行,这样AJAX就不会工作了,因为AJAX只在浏览器中工作。目前,我正在使用浏览器进行测试。