0

dom()HTMLからコンテンツを解析するために使用しています。基本的にタグ内<img class="logo">

値を取得するために使用$this->dom->find('img[class=logo]')しています。

しかし、これを行っているときに、上記のように指定されたタグを持たない HTML に遭遇することがあります。

その場合、エラーがスローされます-Fatal error: call to member function find() on non-object

私はそのエラーが発生したくありません。代わりに、指定されたタグが見つからない場合はスキップします。

エラーをスキップするためにtry-catchも試しましたが、うまくいきません。

これは私が持っているコードです、

try {
    foreach ($this->dom->find('img[class=logo]') as $result) {
        //echo $result->src."\n";
        $li_img = $result->src;
    }
    if(!isset($li_img))
        return;
    else
        return $li_img;
} catch(Exception $e) {
    return;
}

domタグが見つからない場合はスキップしたい。現在、エラーがスローされています。

どんな助けでも大歓迎です。

4

1 に答える 1

2

エラーは$this->dom、それがオブジェクトではないことを意味するため、を使用できません$this->dom->find()

于 2013-03-14T17:06:51.970 に答える