PHP 异常处理中传递错误消息的方式有哪些?
php 异常处理中错误消息可通过以下方式传递:构造函数参数设置 message 属性使用 getmessage() 方法(php 7 及以上)
PHP 异常处理中的错误消息传递方式
在 PHP 中,我们可以使用以下方式在异常处理中传递错误消息:
1. 构造函数参数
立即学习“PHP免费学习笔记(深入)”;
最简单的方法是将错误消息作为构造函数的参数传递给 Exception 对象:
try { // ... 可能会引发异常的代码 ...} catch (Exception $e) { echo $e->getMessage(); // 输出错误消息}
2. 设置 message 属性
也可以在创建异常对象后使用 message 属性手动设置错误消息:
$exception = new Exception();$exception->setMessage('我的错误消息');
3. 使用 Throwable 接口
从 PHP 7 开始,我们可以使用 Throwable 接口的 getMessage() 方法获取错误消息:
try { // ... 可能会引发异常的代码 ...} catch (Throwable $t) { echo $t->getMessage(); // 输出错误消息}
实战案例
假设我们有一个函数 get_user(),它可能会抛出 UserNotFoundException 异常:
function get_user($id) { if (!isset($users[$id])) { throw new UserNotFoundException('用户不存在'); } return $users[$id];}
在使用 get_user() 函数时,我们可以捕获异常并通过任意一种上述方式获取错误消息:
try { $user = get_user(10);} catch (UserNotFoundException $e) { echo $e->getMessage(); // 输出 "用户不存在"} catch (Throwable $t) { echo $t->getMessage(); // 也输出 "用户不存在"}