我使用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
无法找到代码,我想跳过。它现在正在抛出错误。
任何帮助都将不胜感激。
答案 0 :(得分:2)
错误表示$this->dom
不是对象,因此您无法使用$this->dom->find()
。