1

我收到如下错误。

file_get_contents():流不支持查找

我由作曲家安装了 simple_dom:

composer require sunra/php-simple-html-dom-parser

并使用了这个:

use Sunra\PhpSimple\HtmlDomParser;

这是我的代码:

$weblink = "http://www.sumitomo-rd-mansion.jp/kansai/";
    function fetch_sumitomo_links($weblink)
    {
        $htmldoc = HtmlDomParser::file_get_html($weblink);
        foreach ($htmldoc->find(".areaBox a") as $a) {
            $links[]          = $a->href . '<br>';
        }
        return $links;
    }

    $items = fetch_sumitomo_links($weblink);

    print_r($items);

但我遇到了一个错误。任何想法?感谢您的帮助!

4

2 回答 2

1

这是问题修复程序:

$url = 'http://www.sumitomo-rd-mansion.jp/kansai/';

    function fetch_sumitomo_links($url)
    {
        $htmldoc = HtmlDomParser::file_get_html($url, false, null, 0 );
        foreach ($htmldoc->find(".areaBox a") as $a) {
            $links[]          = $a->href . '<br>';
        }
        return $links;
    }

    $items = fetch_sumitomo_links($url);

    print_r($items);
于 2018-10-23T14:07:57.197 回答
0

答案在错误消息中。您用于读取数据的输入源不支持查找。

更具体地说,$htmldoc->find()方法是尝试直接读入文件以搜索它想要的内容。但是因为您是通过 http 直接读取文件,所以不支持这一点。

您的选择是首先加载文件,这样HtmlDomParser就不必从磁盘查找,或者如果您需要从磁盘查找,那么它至少可以从支持查找的本地数据源中读取。

于 2018-10-23T10:03:18.177 回答