展开菜单
首页 精品内容 本月促销 装机必备 Windows PDF教程 macOS软件 IOS软件 Android AI 专题
全部分类

当前位置:

首页 > 编程开发 > Ubuntu中PHPStorm的调试功能如何使用

Ubuntu中PHPStorm的调试功能如何使用

Ubuntu下使用 PhpStorm 调试 PHP 的完整步骤 想在Ubuntu上优雅地调试PHP代码?PhpStorm配合Xdebug是公认的黄金搭档。但配置过程里的小坑,确实让不少开发者头疼。别担心,下面这份从零到一的保姆级指南,会带你一步步打通所有环节。 一 环境准备与安装 工欲善其事,必先利

本文目录

    Ubuntu下使用 PhpStorm 调试 PHP 的完整步骤

    想在Ubuntu上优雅地调试PHP代码?PhpStorm配合Xdebug是公认的黄金搭档。但配置过程里的小坑,确实让不少开发者头疼。别担心,下面这份从零到一的保姆级指南,会带你一步步打通所有环节。

    一 环境准备与安装

    工欲善其事,必先利其器。动手之前,先把基础环境搭建好。

    • 确认 PHP 版本:首先,打开终端,运行命令看看你的PHP版本和运行模式(比如是Apache模块还是PHP-FPM)。这是后续选择正确扩展版本的前提。
    • 安装 Xdebug:关键一步来了。你需要安装与PHP版本匹配的Xdebug扩展。对于Ubuntu系统,命令通常很简单:
      • 通用命令:sudo apt-get update && sudo apt-get install php-xdebug
      系统通常会为你当前活跃的PHP版本自动安装合适的包。
    • 重启服务使扩展生效:安装完别忘了重启Web服务,让扩展加载进来:
      • 如果你用的是Apache:sudo systemctl restart apache2
      • 如果是Nginx搭配PHP-FPM:则需要重启两者:sudo systemctl restart php{version}-fpm && sudo systemctl restart nginx(记得把{version}换成你的实际版本号,比如php8.1-fpm)
    • 验证安装:怎么确认安装成功了呢?两个命令帮你检查:
      • 运行 php -v,在输出信息里应该能看到“with Xdebug”的字样。
      • 或者运行 php -m | grep xdebug,如果能看到“xdebug”被单独列出来,那就恭喜你,扩展已经就位了。

    二 配置 Xdebug 3(Ubuntu 常用)

    环境有了,接下来是核心配置。Xdebug 3的配置项比老版本更清晰,但设置不对,调试器照样连不上。

    • 编辑配置文件:找到你当前PHP运行环境对应的php.ini文件。路径可能像这样:/etc/php/{version}/{apache2|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
    • 参数说明:这几个参数是调试畅通的命门,务必理解:
      • xdebug.mode=debug:这是Xdebug 3的推荐方式,明确启用调试模式。
      • xdebug.client_host=127.0.0.1:告诉Xdebug调试客户端(也就是PhpStorm)的地址。本地调试填127.0.0.1就行。
      • xdebug.client_port=9003:通信端口,默认是9003,必须和后面PhpStorm里的设置保持一致。
      • xdebug.start_with_request=yes:这个设置会让每次PHP请求都尝试连接调试器。如果你觉得每次都连太麻烦,后面会介绍按需触发的替代方案。
    • 保存并重启:配置改完后,保存文件,然后再次重启你的Web服务(命令参考上一节),让新配置生效。

    三 配置 PhpStorm

    服务器端准备好了,现在轮到调试的“大脑”——PhpStorm出场了。这里的配置主要是为了建立通信和映射路径。

    • 设置 PHP 解释器:首先得告诉PhpStorm用哪个PHP。
      • 路径:File → Settings → Languages & Frameworks → PHP → Interpreter → 点击“…”选择或添加,通常路径是 /usr/bin/php。
    • 配置 Servers(关键:路径映射):这一步至关重要,它建立了你本地项目文件和服务器上文件位置的对应关系,否则调试时变量可能显示为“undefined”。
      • 路径:File → Settings → Languages & Frameworks → PHP → Servers → 点击“+”号。
      • Name:起个容易识别的名字,比如“Local Ubuntu”;Host:填localhost;Port:根据你的情况填80或443。
      • 务必勾选“Use path mappings”,然后在下面将你本地的项目根目录(例如 /home/yourname/projects/myapp)映射到服务器上的目录(例如 /var/www/html/myapp)。
    • 配置调试运行项:创建一个调试配置,方便一键启动。
      • 点击 Run → Edit Configurations → 点击“+” → 选择 PHP Web Page。
      • Name:自定义,比如“Debug Homepage”;Server:选择你上一步创建的Server;Debugger确保是Xdebug。
    • 记住常用快捷键:调试效率就靠它们了:
      • 开始/停止调试:Shift+F9 / Ctrl+F2
      • 单步执行:F8(Step Over,不进入函数)、F7(Step Into,进入函数)、Shift+F8(Step Out,跳出函数)

    四 开始调试与常用操作

    激动人心的时刻到了,让我们启动第一次调试。

    • 在你关心的代码行号左侧点击一下,设置一个断点(会出现红色圆点)。
    • 点击PhpStorm工具栏上那个绿色的“电话”图标,或者直接按Shift+F9,启动调试监听。此时IDE状态栏会显示“Listening for incoming connections...”。
    • 打开浏览器,访问你设置了断点的页面(例如 http://localhost/your_project/index.php)。当代码执行到断点处时,PhpStorm窗口会自动激活,程序暂停。
    • 现在,你可以在调试面板里大展身手了:
      • Variables 窗口:查看当前作用域内所有变量的值和状态。
      • Call Stack 窗口:理清代码的执行调用链,看看是怎么一步步走到这里的。
      • 使用F8、F7等快捷键控制代码一步步执行,观察变量和调用栈的实时变化。

    五 常见问题与排查

    理想很丰满,现实可能遇到点小麻烦。以下是几个最常见的“拦路虎”及解决办法。

    • 端口冲突:
      • PHP-FPM默认使用9000端口,所以Xdebug的端口千万别再用9000,改用9003是个稳妥的选择。
    • 断点未命中(最常遇见):点了监听,访问页面却没反应?按这个清单排查:
      • 首先核对Xdebug配置(php.ini)里的xdebug.client_port和PhpStorm监听端口是否一致(默认都是9003)。
      • 确认xdebug.client_host在本地调试时设置为127.0.0.1。
      • 确保修改php.ini后,Web服务已经成功重启(Apache:sudo systemctl restart apache2;Nginx+PHP-FPM:sudo systemctl restart php{version}-fpm && sudo systemctl restart nginx)。
      • 通过php -m | grep xdebug和创建一个phpinfo()页面来双重检查Xdebug扩展是否被正确加载,配置是否生效。
    • 触发式调试(替代方案):如果觉得每次请求都尝试连接调试器太麻烦,可以改用触发模式。
      • 将xdebug.start_with_request的值改为trigger。
      • 这样,平时访问页面不会调试。只有当你在URL后加上?XDEBUG_TRIGGER=1参数,或者通过浏览器插件设置特定的Cookie时,才会启动调试会话,更加灵活。
    • 路径映射错误导致变量/栈不可读:
      • 如果调试时发现变量显示不正常,调用栈文件路径不对,十有八九是Servers里的路径映射没设对。
      • 请返回PhpStorm的Servers设置,仔细检查本地路径和服务器(对于本地Ubuntu环境,服务器路径通常是/var/www/html/...)的映射关系是否准确。这在用虚拟机、Docker或调试远程服务器时尤其重要。
    本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系bd@zhengruan.com
    作者最新文章
    编程开发 Ubuntu
    相关文章 更多
    精品专题 更多
    装机必备

    正软商城装机必备专区,精选办公、浏览器、安全防护、影音播放、压缩解压、设计创作和系统工具等电脑常用正版软件,帮助用户快速完成新电脑软件配置。

    Windows

    正软商城Windows软件专区,汇集适用于Windows电脑的办公、设计、安全防护、影音播放、开发工具和系统优化软件,提供软件介绍、系统要求、正版授权及购买下载服务。

    PDF教程

    正软商城PDF教程频道提供PDF编辑、转换、合并、拆分、压缩及格式处理方法,同时介绍常用PDF软件和工具的使用技巧。

    macOS软件

    正软商城macOS软件专区,精选适用于Mac电脑的办公、设计、影音、效率、开发和系统工具,提供软件功能介绍、macOS兼容版本、正版授权及购买下载服务。

    IOS软件

    正软商城iOS软件专区,精选适用于iPhone和iPad的办公、学习、影音、设计、效率及AI应用,提供功能介绍、适用设备、系统要求和正版获取方式等信息。

    AI

    正软商城AI软件专区,汇集AI写作、AI绘画、AI视频、AI办公、AI编程、AI翻译、智能客服和数据分析等人工智能工具,提供功能介绍、适用平台、收费方式及正版购买信息。

    Mac软件 更多
    讯飞智作 网页版
    讯飞智作 网页版

    讯飞智作是一款基于语音合成技术、虚拟人驱动技术与数字人形象声音构建能力的 AI 数字人音视频创作平台。

    火山引擎 网页版
    火山引擎 网页版

    火山引擎是字节跳动旗下企业级云与AI服务平台。聚焦大模型核心能力,依托字节自研豆包多模态大模型,凭借火山方舟一站式平台,提供模型精调、推理部署、智能应用搭建等全链路服务,结合高性能AI算力,助力各行业快速落地大模型数字化与智能化应用。

    Aperty macOS版
    Aperty macOS版

    Aperty 是 Skylum 推出的 AI 人像修图软件,支持自然肤质修饰、瑕疵处理、面部与身体调整、预设及批量同步。

    立刻MV 网页版
    立刻MV 网页版

    立刻MV 面向音乐人、内容创作者和品牌团队,帮助用户低成本完成歌曲 MV、歌词视频、AI 分镜、图生视频与最终合成。

    蛙蛙写作 网页版
    蛙蛙写作 网页版

    蛙蛙写作 AI 创作工具,覆盖小说、剧本、文案,一键生成文稿,打通文字转视频全流程,高效解决创作难题。

    超级简历WonderCV 网页版
    超级简历WonderCV 网页版

    超级简历WonderCV是面向应届生和AI小白的智能求职平台,覆盖简历、面试与职业规划。

    音述AI 网页版
    音述AI 网页版

    音述AI,是一个以“用声音述说故事”为核心的 AI 音乐创作与声音分享社区。

    AionClaw macOS版
    AionClaw macOS版

    AionClaw 是可在桌面端运行的任务型 AI 助手,通过数字专家与技能市场组合办公、创作、数据和开发能力。

    Loomy macOS版
    Loomy macOS版

    Loomy 是科大讯飞推出的桌面 AI 助手,可通过对话、任务与工作目录协助处理办公、内容创作和资料整理。

    AirBuddy 3 macOS版
    AirBuddy 3 macOS版

    AirBuddy 3 是面向 macOS 的蓝牙外设增强工具,可集中查看 AirPods、Beats 与苹果设备电量,提供快速连接、播放控制、电量提醒、桌面小组件和多台 Mac 外设接力等功能。

    AirServer macOS版
    AirServer macOS版

    AirServer macOS版可把 Mac 转换为无线投屏接收端,通过 AirPlay 或 Google Cast 接收手机、平板和电脑画面,并支持多设备同时连接、高清镜像及会话录制,适合家庭娱乐、课堂教学、会议演示和应用展示。

    AnyDesk macOS版
    AnyDesk macOS版

    AnyDesk macOS版是一款适用于远程办公、设备维护和客户支持的远程桌面工具,可连接并操作异地计算机,支持文件传输、无人值守访问、会话权限控制及跨平台协作。

    WINDOWS 更多
    讯飞智作 网页版
    讯飞智作 网页版

    讯飞智作是一款基于语音合成技术、虚拟人驱动技术与数字人形象声音构建能力的 AI 数字人音视频创作平台。

    火山引擎 网页版
    火山引擎 网页版

    火山引擎是字节跳动旗下企业级云与AI服务平台。聚焦大模型核心能力,依托字节自研豆包多模态大模型,凭借火山方舟一站式平台,提供模型精调、推理部署、智能应用搭建等全链路服务,结合高性能AI算力,助力各行业快速落地大模型数字化与智能化应用。

    PixTV 网页版
    PixTV 网页版

    PixTV 是一款在浏览器中使用的 AI 视觉内容创作平台,提供图片、视频、音频、文字生成、AI 分镜、局部重绘、提示词反推和无限画布等工具,适合短剧、漫剧、广告及社交媒体内容制作。

    讯飞绘文 网页版
    讯飞绘文 网页版

    讯飞绘文网页版是科大讯飞推出的AI图文创作与内容运营工具,覆盖热点选题、文章生成、稿件校对、智能配图、排版发布和数据复盘等环节,适合自媒体创作者及内容团队在线使用。

    Maya(Autodesk Maya) Windows版
    Maya(Autodesk Maya) Windows版

    Autodesk Maya 是面向影视、电视、动画和游戏行业的专业三维制作软件,集多边形与 NURBS 建模、角色绑定、关键帧和动作捕捉动画、Bifrost 特效模拟、材质开发及 Arnold 渲染于一体,

    Aperty Windows版
    Aperty Windows版

    Aperty 是 Skylum 推出的 AI 人像修图软件,支持自然肤质修饰、瑕疵处理、面部与身体调整、预设及批量同步。

    立刻MV 网页版
    立刻MV 网页版

    立刻MV 面向音乐人、内容创作者和品牌团队,帮助用户低成本完成歌曲 MV、歌词视频、AI 分镜、图生视频与最终合成。

    蛙蛙写作 网页版
    蛙蛙写作 网页版

    蛙蛙写作 AI 创作工具,覆盖小说、剧本、文案,一键生成文稿,打通文字转视频全流程,高效解决创作难题。

    超级简历WonderCV 网页版
    超级简历WonderCV 网页版

    超级简历WonderCV是面向应届生和AI小白的智能求职平台,覆盖简历、面试与职业规划。

    音述AI 网页版
    音述AI 网页版

    音述AI,是一个以“用声音述说故事”为核心的 AI 音乐创作与声音分享社区。

    AionClaw Windows版
    AionClaw Windows版

    AionClaw 是可在桌面端运行的任务型 AI 助手,通过数字专家与技能市场组合办公、创作、数据和开发能力。

    Loomy Windows版
    Loomy Windows版

    Loomy 是科大讯飞推出的桌面 AI 助手,可通过对话、任务与工作目录协助处理办公、内容创作和资料整理。