PHP根据类名解析HTML行

时间:2011-09-26 02:16:32

标签: php html-table

如何获取具有特定类名的所有行,例如:

<tr class="dailyeventtext" bgcolor="#cfcfcf" valign="top">

然后将该行中的每个单元格放入一个数组中?

我使用cURL将页面从客户端的服务器上移除。

3 个答案:

答案 0 :(得分:7)

$matches = array();

$dom = new DOMDocument;

$dom->loadHTML($html);

foreach($dom->getElementsByTagName('tr') as $tr) {
    if ( ! $tr->hasAttribute('class')) {
       continue;
    }

    $class = explode(' ', $tr->getAttribute('class'));

    if (in_array('dailyeventtext', $class)) {
       $matches[] = $tr->getElementsByTagName('td');
    }

}

答案 1 :(得分:1)

“我如何使用PHP / regex / etc解析HTML”这个问题有很多答案。请在提问之前搜索。也就是说,这里有一些资源:

我的建议是使用DOMDocument和DOMXPath,如下所示:

答案 2 :(得分:-3)

SUBSTRING(page, INSTR(page, '<title>')+7,(INSTR( page, '</title>'))-(INSTR( page, '<title>')+7) )