如何捕获PHP中第三方库引发的错误

如何捕获PHP中第三方库引发的错误,php,laravel,exception,Php,Laravel,Exception,我正在使用Laravel应用程序中的包来执行whois查找 它工作正常,但对于我输入的某些网站,此错误总是发生: “whois.gtld.godaddy.php第50行中的ErrorException:未定义索引:所有者” 我在谷歌上搜索了一下,发现这个问题在Github上已经有了一个开放的解决方案,而且还有一个现有的解决方案 我不想在源代码中复制并粘贴建议的修复程序,因为这意味着每次安装composer,我都必须这样做 所以我决定改为捕捉错误,但我不知道如何捕捉 我在这里找到了一个类似的解决方

我正在使用Laravel应用程序中的包来执行whois查找

它工作正常,但对于我输入的某些网站,此错误总是发生:

“whois.gtld.godaddy.php第50行中的ErrorException:未定义索引:所有者”

我在谷歌上搜索了一下,发现这个问题在Github上已经有了一个开放的解决方案,而且还有一个现有的解决方案

我不想在源代码中复制并粘贴建议的修复程序,因为这意味着每次安装
composer
,我都必须这样做

所以我决定改为捕捉错误,但我不知道如何捕捉

我在这里找到了一个类似的解决方案,并尝试了接受的解决方案,但它仍然抛出异常

以下是我尝试过的现有代码:

$whois = new \Whois();

try {
    $result = $whois->lookup($data['name']);
} catch (Exception $e) {
    return response()->json(['error' => $e]);
}
如有任何意见/帮助,我将不胜感激


谢谢您的时间。

如果您想捕获异常,请遵循下面提到的编程风格

try {
    $whois = new \Whois();
    $result = $whois->lookup($data['name']);
} catch (\Exception $e) {
    \var_dump($e->getMessage());
}

上述方法几乎适用于所有PHP框架。

尝试捕获
ErrorException
谢谢@CharlotteDunois。我必须加反斜杠,因为如果我不加反斜杠,它就不会工作。是的,因为名称空间。哦,那个。谢谢你指出这一点。