温馨提示×

ubuntu php如何调试

小樊
36
2026-09-25 16:03:57
栏目: 编程语言

在 Ubuntu 上调试 PHP,常见方式有以下几种,按使用频率和学习成本从低到高说明:


一、最基础:打开 PHP 错误显示(开发环境)

1. 修改 php.ini

找到 php.ini(通常是 /etc/php/8.x/cli/php.ini 或 /etc/php/8.x/apache2/php.ini)

php --ini

修改以下配置:

display_errors = On
display_startup_errors = On
error_reporting = E_ALL
log_errors = On

重启服务:

sudo systemctl restart apache2
# 或
sudo systemctl restart php8.x-fpm

二、使用错误日志(推荐)

log_errors = On
error_log = /var/log/php/php_errors.log

查看日志:

tail -f /var/log/php/php_errors.log

三、Xdebug(最常用、最强大)

1. 安装 Xdebug

sudo apt update
sudo apt install php-xdebug

确认安装:

php -m | grep xdebug

2. 配置 Xdebug(CLI / Web 通用)

编辑:

sudo nano /etc/php/8.x/mods-available/xdebug.ini

示例(Xdebug 3):

zend_extension=xdebug.so
xdebug.mode=debug
xdebug.start_with_request=yes
xdebug.client_host=127.0.0.1
xdebug.client_port=9003
xdebug.idekey=PHPSTORM

重启:

sudo systemctl restart apache2

3. 配合 IDE 调试

  • VS Code
    • 安装:PHP Debug
    • launch.json 使用 Listen for Xdebug
  • PhpStorm
    • 设置 PHP → Debug → Port 9003
    • 开启 “Start Listening for PHP Debug Connections”

浏览器访问页面即可断点调试。


四、命令行调试(CLI)

php -d xdebug.mode=debug script.php

五、常用辅助工具

1. var_dump + die

var_dump($data);
die;

2. 使用 Symfony VarDumper

composer require symfony/var-dumper
dump($data);

六、常见问题排查

PHP 不报错?

  • 确认使用的是哪个 SAPI(cli / fpm / apache)
  • 不同 SAPI 使用不同 php.ini
php -i | grep php.ini

如果你愿意,可以告诉我:

  • 用的是 Apache / Nginx / CLI
  • 有没有用 Docker
  • 用的是 VS Code 还是 PhpStorm

我可以直接给你一套可复制的配置。

0 踩