为什么`catch(Exception $ e)`没有处理这个`ErrorException`?

时间:2013-02-25 16:08:14

标签: php laravel laravel-4

我在下面的函数调用中得到ErrorException。怎么会这样?为什么没有被抓住?

try {
    static::$function_name($url);
}
catch (Exception $e) {}

错误的根本原因是file_put_contents电话。我正在使用Laravel 4框架,如果它有任何区别。

1 个答案:

答案 0 :(得分:42)

我怀疑你需要写这个:

try {
    static::$function_name($url);
} catch (\Exception $e) {}

在Exception前面注意\。

当你声明了一个命名空间时,你需要在像Exception这样的类前面指定根命名空间,否则这里的catch块将寻找\Your\Namespace\Exception,而不仅仅是\Exception