首页 > 编程语言 >Ubuntu下PhpStorm调试代码方法

Ubuntu下PhpStorm调试代码方法

来源:互联网 2026-07-31 19:24:10

在Ubuntu配置PhpStorm调试:安装Xdebug,修改php.ini设置xdebug.mode=debug、start_with_request=yes,端口9003。PhpStorm中配置PHP解释器与服务器,设断点后点击绿色虫子或浏览器扩展启动调试,使用StepOver/StepInto检查变量与堆栈。

在 Ubuntu 系统上配置 PHP 的 Xdebug 调试环境,虽然步骤不多,但细节容易踩坑。下面从安装到调试,逐步讲解整个流程,帮助开发者快速搭建调试工具。

1. 安装 Xdebug 扩展

打开终端,根据 PHP 版本安装对应的 Xdebug。例如 PHP 7.4 安装 php7.4-xdebug,PHP 8.1 安装 php8.1-xdebug,更省事的做法是直接安装通用包:

长期稳定更新的攒劲资源: >>>点此立即查看<<<

Ubuntu下PhpStorm调试代码方法

sudo apt-get update
sudo apt-get install php-xdebug

安装完成后,用 php -v 确认,输出中应包含“with Xdebug v3.x”字样,表示扩展已加载成功。

2. 配置 php.ini

先用 php --ini 找到 PHP 配置文件路径。CLI 模式通常对应 /etc/php/{php_version}/cli/php.ini,FPM 模式则是 /etc/php/{php_version}/fpm/php.ini。打开对应文件,在末尾追加以下配置:

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

各项配置的作用:

  • zend_extension 指向 Xdebug 扩展文件,系统会自动查找,无需手动指定路径;
  • xdebug.mode=debug 开启调试模式;
  • xdebug.client_host 填入 PhpStorm 所在机器的 IP,本地调试使用 127.0.0.1;
  • xdebug.client_port 默认 9003,须与 PhpStorm 中的设置一致;
  • xdebug.start_with_request=yes 每次请求自动启动调试,省去手动触发。

3. 配置 PhpStorm

打开 PhpStorm 设置,进入 Languages & Frameworks > PHP,点击“CLI Interpreter”右侧的“…”按钮,选择本地的 PHP 解释器(如 /usr/bin/php),确认保存。

然后进入 Languages & Frameworks > PHP > Servers,点击“+”新建服务器。名称随意(如“Localhost”),Host 填写 localhost,Port 填写 Web 服务器端口(默认 80)。

接着进入 Languages & Frameworks > PHP > Debug,确保 Xdebug 已启用,并将“Debug port”设置为 9003,与 php.ini 保持一致。

4. 设置断点

在代码编辑器中,需要调试的行左侧空白处单击,出现红色圆圈即表示断点设置成功。可设置多个断点,调试时程序会依次暂停。

5. 启动调试会话

有两种方式:

  • 直接在 PhpStorm 工具栏点击绿色虫子图标(或按 Shift+F9),选择之前配置好的服务器(如“Localhost”),即可启动调试。
  • 如果使用浏览器访问项目,需先安装 Xdebug 浏览器扩展(如 Chrome 的“Xdebug Helper”),开启调试模式后访问页面,代码会在断点处暂停。

6. 调试操作

代码暂停后,PhpStorm 的调试工具栏非常实用。常用操作:

  • Step Over(F8):执行当前行,跳到下一行;
  • Step Into(F7):进入当前函数或方法内部;
  • Step Out(Shift+F8):跳出当前函数;
  • Resume Program(F9):继续执行到下一个断点或结束;
  • Stop(Ctrl+F2):终止调试。

在“Debug”工具窗口中,可实时查看变量值、调用堆栈、当前执行位置等信息,排查问题非常直观。

常见问题排查

  • 如果调试未触发,先检查 xdebug.start_with_request=yes 是否写对,然后重启 Web 服务器(sudo systemctl restart apache2nginx)和 PhpStorm。
  • 确认 xdebug.client_port 与 PhpStorm 的端口设置完全一致,避免端口冲突。
  • 如果使用 Nginx,确保在 nginx.conf 中配置好 fastcgi_pass 指向 PHP-FPM 的套接字,然后重启 Nginx 使配置生效。

侠游戏发布此文仅为了传递信息,不代表侠游戏网站认同其观点或证实其描述

热游推荐

更多
湘ICP备2026025700号-3 湘公网安备 43070302000280号
All Rights Reserved
本站为非盈利网站,不接受任何广告。本站所有软件,都由网友
上传,如有侵犯你的版权,请发邮件给xiayx666@163.com
抵制不良色情、反动、暴力游戏。注意自我保护,谨防受骗上当。
适度游戏益脑,沉迷游戏伤身。合理安排时间,享受健康生活。