- FuelPHP 教程
- FuelPHP - 首页
- FuelPHP - 简介
- FuelPHP - 安装
- FuelPHP - 架构概述
- FuelPHP - 简单 Web 应用
- FuelPHP - 配置
- FuelPHP - 控制器
- FuelPHP - 路由
- FuelPHP - 请求与响应
- FuelPHP - 视图
- FuelPHP - 展示器
- FuelPHP - 模型与数据库
- FuelPHP - 表单编程
- FuelPHP - 验证
- 高级表单编程
- FuelPHP - 文件上传
- FuelPHP - Ajax
- FuelPHP - HMVC 请求
- FuelPHP - 主题
- FuelPHP - 模块
- FuelPHP - 包
- Cookie 与 Session 管理
- FuelPHP - 事件
- FuelPHP - 邮件管理
- FuelPHP - 性能分析器
- 错误处理与调试
- FuelPHP - 单元测试
- 完整工作示例
- FuelPHP 有用资源
- FuelPHP - 快速指南
- FuelPHP - 有用资源
- FuelPHP - 讨论
FuelPHP - 错误处理与调试
FuelPHP 提供了强大的错误处理和应用程序调试支持。在本节中,我们将了解错误处理和调试。
错误处理
FuelPHP 的错误处理基于异常。FuelPHP 为所有旧的 PHP 错误提供了 PhpErrorException 异常。每当遇到 PHP 代码中的错误时,FuelPHP 都会引发 PhpErrorException。FuelPHP 还简化了为各种 HTTP 状态代码显示自定义错误页面的操作。
文件未找到错误
FuelPHP 提供了一个新的异常类 HttpNotFoundException 来处理未知请求。有时,我们可能会遇到无法处理的请求。此时,我们可以抛出 HttpNotFoundException。
默认情况下,在路由配置文件 fuel/app/config/routes.php 中使用 400 条目为 HttpNotFoundException 配置了默认页面。每当引发 HttpNotFoundException 时,请求将重定向到 400 页面。
'_404_' => 'welcome/404', // The main 404 route
内部错误
FuelPHP 提供了一个新的异常类 HttpServerErrorException 来处理所有服务器错误。有时,由于内部错误,我们可能无法处理给定的请求。此时,我们可以抛出 HttpServerErrorException。
默认情况下,在路由配置文件 fuel/app/config/routes.php 中使用 500 条目为 HttpServerErrorException 配置了默认页面。每当引发 HttpServerErrorException 时,请求将重定向到 500 页面。
'_500_' => 'welcome/500', // The main 500 route
此页面将记录错误,在页面中显示格式化的错误,并偶尔向系统管理员发送通知。
访问权限违规错误
FuelPHP 提供了一个新的异常类 HttpNoAccessException 来处理访问权限违规。有时,由于访问限制,我们可能无法处理请求。此时,我们可以抛出 HttpNoAccessException。
默认情况下,在路由配置文件 fuel/app/config/routes.php 中使用 403 条目为 HttpNoAccessException 配置了默认页面。每当引发 HttpNoAccessException 时,请求将重定向到 403 页面。
'_403_' => 'welcome/403', // The main 403 route
此页面将显示访问权限违规信息。
调试
调试是开发应用程序中最常见的活动之一。FuelPHP 提供了一个简单的类 Debug 来处理应用程序的调试活动。在本节中,我们将学习 Debug 类及其方法。
Debug 类
Debug 类提供实用程序方法来显示变量、对象、数组等的详细信息。Debug 类提供以下方法:
dump
dump 方法以格式化的结构化方式将多个混合值返回到浏览器。
Debug::dump($var1, $var2);
backtrace()
backtrace 显示有关代码当前执行的详细信息。它显示 PHP 文件信息、当前行及其所有先前的操作。
Debug::backtrace();
classes()
返回所有类的列表。
Debug::classes();
interfaces()
返回所有接口类的列表。
Debug::interfaces();
includes()
返回当前在运行时加载的所有包含文件的列表。
Debug::includes();
functions()
返回所有函数的列表。
Debug::functions();
constants()
返回所有常量的列表。
Debug::constants();
extensions()
返回所有扩展的列表。
Debug::extensions();
headers()
返回所有 HTTP 标头的列表。
Debug::headers();
phpini()
打印从 php.ini 文件读取的配置设置列表。
Debug::phpini();