PHP调试(使用PHPStorm + Xdebug)


1. 调试概述

PHPStorm可以实现的调试功能:
[1] PHP中添加断点.
[2] HTML 和 JavaScript 中添加断点.
[3] 多个同步会话调试.
[4] 可定制的断点调试属性 : conditions(条件), pass count(通过统计)等等.
[5] 调试界面中包括 Frames, variables, 和 监控视图 views .
[6] 运行可执行的表达式.
[7] 支持 Xdebug 和 Zend Debugger 调试.



2. 调试步骤


[1] 首先选择你要使用的调试引擎: Xdebug 或者 Zend Debugger
     选择好引擎, 安装并配置调试引擎.
[2] 调试 CoffeeScript, TypeScript, 和 Dart code, 你需要生成一个源代码映射map. 这将设置原始代码和生成的JavaScript代码中的行之间的对应关系。 如果未生成源映射,则无法正确识别和处理断点.

[3] 根据你的debug模式, 定义一个 run/debug 配置.
[4] 在源代码中添加断点.
[5] 在 PHP 会话中发起一个调试会话.
[6] Pause中断或 resume 这个调试会话.
[7] 在调试会话期间, step单步进入断点, evaluate执行表达式, 即时更改值检查暂停程序,并设置监视.
[8] 在你开始调试会话后, 调试图标会变绿 暗示你调试被激活.
[9] 如果你想查看当前所有的调试应用程序, 
    主菜单选择 Run | Show Running List


3. 使用调试 

在你为你的代码配置好调试后, 在调试模式中你能使用 Shift+F9 发起调试.
在“debug”工具窗口中,您可以看到包含状态,变量和监视的框架和线程列表。 选择框架时,您会看到与所选框架对应的变量.

十分有用的调试快捷键:
切换断点 : Ctrl+F8
恢复程序: F9
Step over(跳过): F8 (有的是shift + F8 反正我的是
Step into(单步进入): F7
Stop(停止): Ctrl+F2
查看断点详细信息/所有断点: Ctrl+Shift+F8
在插入符号上调试代码: Shift+F9 (e.g 如果你留在主要方法) 或者 Shift+Alt+F9



4. 设置断点 

[1] 设置断点细节和条件
如果你想改变断点的细节, 按住 Ctrl+Shift+F8. 这里你就能指定断点的条件.
如果您有任何标有标签的实例,您也可以在条件表达式中使用它:

[2] 活动断点
如果您想要在特定代码行执行某些内容而不实际停止,则另一个操作可能很有用。 您可以使用Action断点来完成此操作。 要创建一个,只需在点击左侧设置断点所在行的侧边行首栏并按住shift 就会自动弹出设置框

[3] 临时断点
要创建仅停止一次的断点,请在点击左侧设置断点所在行的侧边行首栏并按住 Shift+Alt

[4] 禁用断点 
点击左侧设置断点所在行的侧边行首栏并按住 alt



5. 会话调试器

[1] 下拉调试框
如果你想在调试时“回到过去”,可以通过Drop Frame动作完成。 如果你错误地走得太远,这将是一个很大的帮助。 这不会还原您的应用程序的全局状态,但至少会通过堆栈框架返回。

[2] 运行到光标所在行 
有时你需要恢复程序并停在另一行代码中,而不需要添加另一个断点 按住 Alt+F9

[3] 标记实例
如果希望在调试时始终识别特定实例,可以通过F11或“ Variables和 Watches”选项卡中的上下文菜单使用彩色标签进行标记。下次此实例出现在Watches,Variables或Evaluate表达式中时,您将看到标签


[4] 执行表达式 
在调试模式期间 你可以执行任何表达式 通过按 Alt+F8
此工具提供代码完成,就像在编辑器中一样,因此输入任何表达式都非常容易,
如果您有任何标有标签的实例,代码完成将为您提供其名称,以便您可以执行它们。


6. 重要快捷键

F7 单步调试
shift + F8 | F8 : 跳出嵌套函数
alt + F8 : 执行表达式
alt + F9 : 运行到光标所在行
F9 : 恢复程序
ctrl + F2 : 停止

Ctrl+Shift+F8 : 查看所有断点

原文来源地址:PHPstorm帮助文档

7. 安装配置

7.1. 安装Xdebug

 下载地址:xdebug

 安装可参照: xdebug的安装

 不过,配置可能不需要这么多,我本地的配置如下

zend_extension = "F:/wamp/bin/php/php5.5.12/zend_ext/php_xdebug-2.2.5-5.5-vc11-x86_64.dll"
;
[xdebug]
xdebug.auto_trace=on
xdebug.remote_enable = on
xdebug.show_local_vars=0
xdebug.remote_enable =1
xdebug.remote_handler = dbgp
xdebug.remote_host = 127.0.0.1

xdebug.remote_mode = req
xdebug.remote_port = 9000
xdebug.idekey=PHPSTORM

7.2  给浏览器Chrome安装 Xdebug-helper插件

插件下载地址: xdebug-helper

如果界面不是如下界面,可能需要翻墙更新成最新版本

配置:


7.3 配置phpStorm的debug参数

【1】点击 run --> edit Configurations


【2】点击 ‘+’选择 PHP Remote Debug


【3】输入配置的名称 Name

        勾选 filter by IDE key 

        填写IDE key : PHPSTORM

        点击 Server 右边的选择


【4】 点击 + 

          输入服务名称

          输入对应的 配置host域名

          输入端口号 选择 debugger 引擎 xdebug

           点击应用 apply 点击 ok



【5】 回到 【3】 点击应用 apply 点击ok

7.4 开始调试

【1】点击页面 右上角 下拉框 选择刚刚配置的 debug名称 

【2】在代码所在行 左侧行首 点击添加断点

【3】点击右上角 绿色运行 按钮


【4】打开 chrome浏览器 点击 图标 选中为 debug

【5】浏览器访问程序对应的页面 ,调试开始。。。。

[]Xdebug helper【

【】】










猜你喜欢

转载自blog.csdn.net/wujiangwei567/article/details/80902998