我在下面的函数调用中得到了ErrorException.这怎么可能?为什么没有被抓住?

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

错误的根本原因是file_put_contents次呼叫.如果有什么不同的话,我使用的是Laravel 4框架.

推荐答案

I suspect that you need to write this:

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

请注意异常前面的\.

当您声明了一个名称空间时,需要在类前面指定根名称空间,比如Exception,否则这里的catch块将查找\Your\Namespace\Exception,而不仅仅是\Exception

Laravel相关问答推荐

为什么Laravel在API请求时返回BadMethodCallException?

在Laravel Livewire中,如果一个输入基于另一个唯一的字段是唯一的,如何判断验证?

函数接受 Laravel 集合对象,尽管只允许使用字符串

Laravel 集合排序不生效

Laravel:使用 Input::old 时 textarea 不会重新填充

Laravel 6 Passport 在错误的凭证上返回 400 Bad request

覆盖 HTTP 标头的默认设置 (X-FRAME-OPTIONS)

安卓 retrofit |发布自定义对象(将 json 发送到服务器)

Eloquent: hasNot 带参数

laravel 密码盐存储在哪里?

Laravel 框架类在 PHPUnit 数据提供程序中不可用

使用模型工厂、一对一和一对多关系定义 Laravel 外键,而不创建不必要的模型

如何在 Laravel 5 中验证当前、新密码和新密码确认?

如何从 laravel 中的现有数据库创建迁移

在 php Laravel 5 中创建自定义帮助函数的最佳实践是什么?

laravel 队列 - 同步驱动程序如何工作?它是在单独的进程/线程还是主执行线程中执行?

Laravel 隐藏属性.例如密码 - 安全

assets资源不引用公用文件夹(Laravel)

Laravel 5 - 跳过迁移

限制自己重载外部 API 的速率