PHP检查抛出的异常类型

标签 php exception-handling try-catch

当然在 PHP 中你可以捕获所有抛出的异常:

try{
    /* code with exceptions */
}catch(Exception $e) {
    /* Handling exceptions */
}

但是有没有办法从 catch block 内部检查抛出异常的异常类型?

最佳答案

您可以使用 get_class :

try {
    throw new InvalidArgumentException("Non Sequitur!", 1);
} catch (Exception $e) {
    echo get_class($e);
}

关于PHP检查抛出的异常类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38316800/

相关文章:

r - sink() 在 tryCatch block 中不起作用

Java - Try/Catch NumberFormatException 使用以前的值?

php - Metabox 选择数组在自定义列中显示帖子 ID 而不是帖子名称

c++ - 从 std::runtime_error 私有(private)继承的类未被捕获为 std::exception

javascript - 将 php 数组传递给 javascript 变量,然后传递给服务器

c# - 处理一个不会在C#中引发异常的类

php - 如何在 PHPUnit 测试中覆盖 Laravel 的异常处理程序?

php - 只捕获 SimpleXML 异常?

php - Symfony2 禁用缓存?

php - 限制对Docker容器内容的访问