发布于2026-07-20 阅读(0)
扫一扫,手机访问
在PHP开发中,遇到错误却看不到具体提示,是不少新手头疼的问题。其实,PHP的报错机制完全可控,关键在于如何让错误信息“露脸”。这里有两个最常用的方法,覆盖了从全局配置到脚本级别的灵活控制。

如果你能修改服务器上的 php.ini 文件,这是最直接的方式。在文件中找到关于错误报告的配置区域,通常会有一些注释掉的示例,比如:
; Examples: ; - Show all errors, except for notices and coding standards warnings ; error_reporting = E_ALL & ~E_NOTICE ; - Show all errors, except for notices ; error_reporting = E_ALL & ~E_NOTICE | E_STRICT ; - Show only errors ; error_reporting = E_COMPILE_ERROR | E_RECOVERABLE_ERROR | E_ERROR | CORE_ERROR ; - Show all errors except for notices and coding standards warnings ; error_reporting = E_ALL & ~E_NOTICE
在这些注释下面,新增一行配置:
error_reporting = E_ALL
保存后,记得重启 Web 服务(比如 Apache 或 Nginx),改动就会生效。这样,所有级别的错误(包括通知、警告等)都会直接显示在页面上,排查问题一目了然。
如果你没有权限改 php.ini,或者只想在特定脚本中开启错误显示,那就在代码里直接调用 error_reporting() 函数。这个函数可以接受一个参数,控制报错级别,如果不传参则返回当前级别。
常见用法示例:
// 禁用错误报告 error_reporting(0); // 报告运行时错误(错误、警告、解析错误) error_reporting(E_ERROR | E_WARNING | E_PARSE); // 报告所有错误 error_reporting(E_ALL);
很多论坛或 CMS 系统在入口文件(比如 include/common.inc.php)中会默认禁用错误报告(error_reporting(0))。调试时,只需将其改为 error_reporting(E_ALL),就能看到 PHP 抛出的具体错误信息了。改完后记得保存文件,再刷新页面即可。
两种方法各有用武之地:全局配置适合整个开发环境,函数设置则适合临时调试或隔离特定脚本。实际开发中,掌握这两招,基本就能应对大部分错误排查场景了。
上一篇:PHP 发展史
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
7
8