温馨提示×

ubuntu php怎么调试代码

小樊
41
2026-09-22 15:29:44
栏目: 编程语言

在 Ubuntu 上调试 PHP 代码,常见方式有以下几种,按使用频率和推荐程度给你总结:


一、最常用:打印调试(快速)

适合简单问题。

1. echo / print_r / var_dump

<?php
$var = ['a' => 1, 'b' => 2];
echo '<pre>';
print_r($var);
var_dump($var);

2. error_log

写入日志文件,不干扰页面输出:

error_log('debug info: ' . print_r($var, true));

日志位置一般在:

/var/log/apache2/error.log
# 或
/var/log/nginx/error.log

二、开启 PHP 错误显示(非常重要)

1. 修改 php.ini

php --ini
sudo nano /etc/php/8.1/cli/php.ini
# 或 fpm 版本
sudo nano /etc/php/8.1/fpm/php.ini

修改:

display_errors = On
error_reporting = E_ALL
log_errors = On

重启服务:

sudo systemctl restart php8.1-fpm
sudo systemctl restart nginx
# 或 apache
sudo systemctl restart apache2

三、Xdebug(专业调试,强烈推荐)

适合复杂项目、断点调试。

1. 安装 Xdebug

sudo apt install php-xdebug

2. 配置 Xdebug(PHP 8.1 示例)

编辑:

sudo nano /etc/php/8.1/mods-available/xdebug.ini

内容:

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

重启:

sudo systemctl restart php8.1-fpm

验证:

php -m | grep xdebug

3. 配合编辑器

  • VS Code:装 PHP Debug 插件
  • PhpStorm:自带 Xdebug 支持

四、命令行调试(CLI)

php -l file.php      # 语法检查
php file.php         # 直接运行

五、日志调试(生产环境推荐)

file_put_contents('/tmp/debug.log', print_r($data, true), FILE_APPEND);

六、常见问题

❌ 白屏
✅ 检查 display_errors 是否开启

❌ Xdebug 不生效
✅ 确认 php-fpmcli 是同一版本


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

  • 用的是 Apache / Nginx / CLI
  • PHP 版本
  • 是否用 框架(Laravel / ThinkPHP 等)

我可以给你更精确的调试方案。

0