0

这让我停留了一段时间,所以我想我会发布它。我的问题是我的 find-> 工作不正常并且 $product_name 出现 null

    require 'mysql_con.php';
    require 'simple_html_dom.php';

    $html = file_get_html('http://www.xxxx.com/index.php?main_page=index&cPath=23');

    /* foreach($html->find('img') as $element) {
           echo $element->src . '<br>'; 
        }    */

    $find = $html->find('#specialsListing .specialsListBoxContents .indent a');

    $i=0;

    foreach ($find as $test) {

        $link = html_entity_decode($test->href);

        $linkgrab = file_get_html($link);

        $product_name = $linkgrab->find('#productName')->innertext;

        echo $product_name;

        break;

    }
4

1 回答 1

1

尽管我为其他人发布了此内容,但我仍然不确定为什么会出现以下情况,如果有人可以向我指出,我会很高兴。

我发现问题是:

$product_name = $linkgrab->find('#productName')->innertext;

应该

$product_name = $linkgrab->find('#productName', 0)->innertext;

基本上产品名称必须编号。但是我仍然感到困惑,因为在这里: $find = $html->find('#specialsListing .specialsListBoxContents .indent a');find 命令为我工作 find 不需要编号,而且我认为选择器也是一个 ID 的事实会使它变得不必要,如果有人能指出我错过了什么会很好。

于 2013-05-02T23:32:40.843 回答