PHP - 如何捕获“尝试获取非对象的属性”错误
我试图用try/catch语句捕获“试图获取非对象的属性”错误,但它失败了,我仍然得到一个PHP错误。我使用:
try{
$id = Model()->find('id=1')->id;
}catch(Exception $e){
echo 'failed';
}
我的 find 函数返回一个对象(活动记录),并且我可以通过对象 prop 访问 id 列,如所示。
但是,如果未找到 AR,它将是空对象。我以为 try 语句会抓住这一点。我自己的解决方法是使用 isset()。但是我对为什么try语句不接受并捕获此错误感到困惑。