php调试需开启错误提示:1.临时用error_reporting(e_all)等代码;2.永久改php.ini中error_reporting、display_errors和display_startup_errors为on;3.启用log_errors并指定error_log路径查日志;4.cli模式加-d参数或脚本内设置。

PHP 开启错误提示是调试阶段最基础也最关键的一步,能直接看到语法错误、未定义变量、函数调用失败等信息,避免“页面空白”或“500 错误”却不知原因的情况。
1. 临时开启:在脚本开头加几行代码
适合开发环境快速测试,不影响服务器全局配置:
-
error_reporting(E_ALL); —— 显示所有错误、警告、通知(包括
Notice和Deprecated) - ini_set('display_errors', '1'); —— 让错误直接输出到浏览器(注意:生产环境必须关掉!)
- ini_set('display_startup_errors', '1'); —— 显示 PHP 启动时的错误(比如扩展没加载)
示例:
<?php error_reporting(E_ALL);
ini_set('display_errors', '1');
ini_set('display_startup_errors', '1');
echo $undefined_var; // 会立刻报 Notice: Undefined variable
?>
2. 永久开启:修改 php.ini 配置文件
适合本地开发环境(如 XAMPP、WAMP、Mac 自带 PHP 或 Docker),一劳永逸:
- 找到当前生效的
php.ini文件(运行phpinfo();查看 “Loaded Configuration File” 路径) - 修改以下三项(确保不是被分号注释掉):
error_reporting = E_ALL display_errors = On display_startup_errors = On
改完记得重启 Web 服务(Apache/Nginx/PHP-FPM)才生效。
3. 查看错误日志比屏幕输出更可靠
有些错误(如内存溢出、致命错误)可能无法显示在页面上,但会写入错误日志:
- 启用日志:
log_errors = On - 指定日志路径:
error_log = /var/log/php_errors.log(Linux)或error_log = C:\php\logs\php_errors.log(Windows) - 配合
tail -f /var/log/php_errors.log实时查看,比刷网页更及时
4. 命令行运行 PHP 时也要开启错误提示
CLI 模式默认不显示所有错误,调试脚本(如 artisan、自定义命令)时容易漏掉问题:
- 运行时加参数:
php -d display_errors=1 -d error_reporting=E_ALL script.php - 或直接在脚本里加
error_reporting(E_ALL); ini_set('display_errors','1');(CLI 下display_errors是有效的)
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











