- CodeIgniter 教程
- CodeIgniter - 首页
- CodeIgniter - 概述
- CodeIgniter - 安装 CodeIgniter
- CodeIgniter - 应用程序架构
- CodeIgniter - MVC 框架
- CodeIgniter - 基本概念
- CodeIgniter - 配置
- CodeIgniter - 使用数据库
- CodeIgniter - 库
- CodeIgniter - 错误处理
- CodeIgniter - 文件上传
- CodeIgniter - 发送邮件
- CodeIgniter - 表单验证
- CodeIgniter - 会话管理
- CodeIgniter - Flashdata
- CodeIgniter - Tempdata
- CodeIgniter - Cookie 管理
- CodeIgniter - 常用函数
- CodeIgniter - 页面缓存
- CodeIgniter - 页面重定向
- CodeIgniter - 应用程序分析
- CodeIgniter - 基准测试
- CodeIgniter - 添加 JS 和 CSS
- CodeIgniter - 国际化
- CodeIgniter - 安全性
- CodeIgniter 有用资源
- CodeIgniter - 快速指南
- CodeIgniter - 有用资源
- CodeIgniter - 讨论
CodeIgniter - 错误处理
很多时候,在使用应用程序时,我们会遇到错误。如果错误没有得到妥善处理,对用户来说是非常恼人的。CodeIgniter 提供了一种简单的错误处理机制。
您希望在应用程序处于开发模式而不是生产模式时显示这些消息,因为错误消息可以在开发阶段轻松解决。
可以通过更改以下 index.php 文件中的行来更改应用程序的环境。这可以设置为任何值,但通常为此目的使用三个值(开发、测试、生产)。
define('ENVIRONMENT', isset($_SERVER['CI_ENV']) ? $_SERVER['CI_ENV'] : 'development');
不同的环境需要不同级别的错误报告。默认情况下,开发模式将显示错误,而测试和生产模式将隐藏它们。CodeIgniter 提供了如下所示的三个函数来处理错误。
show_error() 函数以 HTML 格式在屏幕顶部显示错误。
语法 |
show_error($message, $status_code, $heading = 'An Error Was Encountered') |
参数 |
|
返回值类型 |
混合 |
show_404() 函数在您尝试访问不存在的页面时显示错误。
语法 |
show_404($page = '', $log_error = TRUE) |
参数 |
|
返回值类型 |
空 |
log_message() 函数用于写入日志消息。当您想要编写自定义消息时,这很有用。
语法 |
log_message($level, $message, $php_error = FALSE) |
参数 |
|
返回值类型 |
空 |
可以在 application/config/config.php 文件中启用日志记录。以下是 config.php 文件的屏幕截图,您可以在其中设置阈值。
/* |-------------------------------------------------------------------------------- | Error Logging Threshold |-------------------------------------------------------------------------------- | You can enable error logging by setting a threshold over zero. The | threshold determines what gets logged. Threshold options are: | | 0 = Disable logging, Error logging TURNED OFF | 1 = Error Message (including PHP errors) | 2 = Debug Message | 3 = Informational Messages | 4 = All Messages | | You can also pass an array with threshold levels to show individual error types | | array(2) = Debug Message, without Error Messages | For a live site you'll usually only enable Errors (1) to be logged otherwise | your log files will fill up very fast. | */ $config['log_threshold'] = 0;
您可以在 application/log/ 中找到日志消息。在启用日志文件之前,请确保此目录可写。
可以在 application/views/errors/cli 或 application/views/errors/html 中找到各种错误消息模板。