FuelPHP - 错误处理 和调试

FuelPHP为处理错误和调试应用程序提供了出色的支持.让我们在本章中理解错误处理和调试.

错误处理

FuelPHP错误处理基于异常. FuelPHP为所有旧的php错误提供PhpErrorException异常.只要遇到PHP代码中的错误,FuelPHP就会引发PhpErrorException. FuelPHP还可以轻松显示各种HTTP状态代码的自定义错误页面.

找不到文件错误

FuelPHP提供了一个新的异常类,HttpNotFoundException处理未知请求.有时,我们可能会遇到可能无法处理的请求.那时,我们可以抛出HttpNotFoundException.

默认情况下,在路由配置文件中使用400条目为fuel/app/config/routes.php配置HttpNotFoundException的默认页面.每当引发HttpNotFoundException时,请求将被重定向到400页.

'_404_'   => 'welcome/404',    // The main 404 route

内部错误

FuelPHP提供了一个新的异常类, HttpServerErrorException来处理所有服务器错误.有时,由于内部错误,我们可能无法处理给定的请求.那时,我们可以抛出HttpServerErrorException.

默认情况下,在路由配置文件中使用500条目为fuel/app/config/routes.php配置HttpServerErrorException的默认页面.每当引发HttpServerErrorException时,请求将被重定向到500页.

'_500_'   => 'welcome/500',    // The main 500 route

此页面将记录错误,在页面中显示遗嘱格式错误并偶尔发送通知系统管理员.

访问冲突错误

FuelPHP提供了一个新的异常类HttpNoAccessException来处理访问冲突.有时,由于访问限制,我们可能无法处理请求.那时,我们可以抛出HttpNoAccessException.

默认情况下,在路径配置文件中使用403条目为fuel/app/config/routes.php配置HttpNoAccessException的默认页面.每当引发HttpNoAccessException时,请求将被重定向到403页.

'_403_'   => 'welcome/403',     // The main 403 route

此页面将显示访问违规信息.

调试

调试是开发应用程序的最常见活动之一. FuelPHP提供了一个简单的类 Debug 来处理应用程序的调试活动.让我们在本章中学习Debug类及其方法.

Debug Class

Debug类提供实用程序方法来显示变量的详细信息, Debug类提供了以下方法,

dump

dump方法以格式化的结构形式向浏览器返回多个混合值方式.

Debug::dump($var1, $var2);

backtrace()

backtrace显示有关当前代码执行的详细信息.它显示了PHP文件信息,当前行及其以前的所有操作.

Debug::backtrace();

classes()

返回所有类的列表.

Debug::classes();

interfaces()

返回所有接口类的列表.

Debug::interfaces();

includes()

返回当前在运行时加载的所有包含文件的列表.

 
 Debug :: includes();

functions()

返回所有函数的列表.

Debug::includes();

常量()

返回所有常量的列表.

Debug::constants();

extensions()

返回所有扩展名列表.

Debug::extensions();

headers()

返回所有HTTP标头的列表.

Debug::headers();

phpini()

打印从php.ini文件中读取的配置设置列表.

Debug::phpini();