使用PHP简单html dom的多个关键字结果

时间:2013-08-11 11:09:02

标签: php simple-html-dom

我有一组关键字,我想通过简单的html dom&解析检索同一页面上所有关键字的报废数据&在同一时间。问题是简单的html dom只检索列表中的final关键字而不是其他关键字的数据。如果有人能帮助我为我解决这个问题,我真的很感激。这是我的代码:

<?php

$keywords = "math,chemistry,science";

$keywords = explode(',', $keywords);

foreach($keywords as $keyword){
echo $keyword.'<br>';
}

include("simple_html_dom.php");

$html = file_get_html('http://www.tutorvista.com/search/'.$keyword);

$i = 1;
foreach($html->find('div[style=padding:20px; border-top:thin solid #DDDDDD; border-bottom:none;]') as $element) {
foreach($element->find('div[class=entry-abstract]') as $div) 
{
    $title[$i] = $div->plaintext.'<br><br>';
}
   $i++;
}
print_r($title);

?>

2 个答案:

答案 0 :(得分:0)

在第一次预告后包括所有代码:

foreach($keywords as $keyword){
echo $keyword.'<br>';

//include other code here 

//..
print_r($title);
}

答案 1 :(得分:0)

$ keyword只具有foreach循环处理的最后一个元素的值。每个关键字的操作必须进入foreach循环:

<?php
include("simple_html_dom.php");
$keywords = "math,chemistry,science";

$keywords = explode(',', $keywords);

foreach($keywords as $keyword)
{
    echo $keyword.'<br>';

    $html = file_get_html('http://www.tutorvista.com/search/'.$keyword);

    $i = 1;
    foreach($html->find('div[style=padding:20px; border-top:thin solid #DDDDDD; border-bottom:none;]') as $element)
    {
        foreach($element->find('div[class=entry-abstract]') as $div) 
        {
            $title[$i] = $div->plaintext.'<br><br>';
        }
        $i++;
    }
    print_r($title);
}

?>