通八洲科技

php命令行脚本怎么调试_phpcli模式调试教程汇总【教程】

日期:2025-12-31 00:00 / 作者:雪夜
CLI模式下需显式启用错误显示:用php -d display_errors=1 -f script.php,或同时设error_reporting=32767;若脚本内禁用则需修改代码;调试时注意输出缓冲、换行及环境变量模拟,并正确配置XDEBUG_MODE适配PHP版本。

php -f 执行时如何看到错误详情

默认情况下,CLI 模式会隐藏 PHP 错误提示(display_errors=Off),哪怕脚本里有 parse error 也只报个空行或 Segmentation fault。必须显式开启错误输出:

用 var_dump / print_r 调试但没输出?

CLI 下 var_dump() 默认不带换行和 HTML 格式,容易被后续输出“盖掉”,尤其在循环或管道中;print_r() 默认也不换行。常见表现是:明明执行了,终端却没反应。

怎么模拟 Web 环境变量($_SERVER、$_ENV)

很多 CLI 脚本会检查 $_SERVER['REQUEST_METHOD'] 或读取 $_ENV['APP_ENV'],直接运行会因缺失而逻辑异常。

xdebug 在 CLI 下不触发断点?

Web 版 xdebug 常配了 xdebug.mode=debug + 浏览器插件触发,但 CLI 默认不监听,也不传 XDEBUG_SESSION_START

实际调试时最容易卡在「以为脚本没跑,其实是跑了但没输出也没报错」,先确认 display_errorserror_reporting 是否生效,再查环境变量和 xdebug 模式是否匹配当前 PHP 版本。