使用 PHP 网页调试配置进行调试
在此调试模式下,PhpStorm 完全控制调试过程:它启动应用程序、打开浏览器,并根据 PHP 网页调试配置 激活调试引擎。
一个 PHP Web 页面 调试配置会告知 PhpStorm 访问应用程序起始页面的 URL 地址、用于打开起始页面的浏览器,以及要使用的 调试服务器配置 。
您还可以指定在调试期间希望 PhpStorm 忽略请求的脚本。 当您的应用程序包含使用 AJAX 的脚本时,此方法可能会很有用。 假设您有一个 menu-ajax-script.php ,它会“重新加载”您的网页的一部分。 此脚本运行正常,因此您无需调试它。 然而,在调试会话期间仍会请求此脚本。 要忽略对此脚本的传入连接,请将 menu-ajax-script.php 脚本添加到 跳过路径 列表中。
准备调试引擎
PhpStorm 支持使用两种最流行的工具进行调试: Xdebug 和 Zend Debugger 。 这些工具不能同时使用,因为它们会相互阻碍。 为避免此问题,您需要按照 配置 Xdebug 和 配置 Zend Debugger 中的描述更新相关 PHP 解释器的 php.ini 文件。
在编辑器中打开活动的 php.ini 文件:
-
在 设置 对话框( Ctrl+Alt+S )中,单击 PHP 。
-
在打开的 PHP 页面上,单击
,位于 CLI 解释器 字段旁边。
-
在打开的 CLI 解释器 对话框中, 配置文件 只读字段显示活动 php.ini 文件的路径。 点击 在编辑器中打开 。
设置断点
断点 是在调试会话期间用于触发操作的源代码标记。 通常,设置断点的目的是暂停程序执行,以便您检查程序数据。 然而,PhpStorm 可以将断点用作触发各种不同操作的触发器。 断点可以在调试过程中的任何时间设置。 您的断点不会直接影响源文件,但断点及其设置会与您的 PhpStorm 项目一起保存,因此您可以在调试会话中重复使用它们。
-
将插入符号放置在源代码的所需行。
断点可以在 PHP 上下文中设置,位于 php 、 html 和其他类型的文件中。 行断点只能设置在可执行行上,不能设置在注释、声明或空行上。
-
请执行以下操作之一:
-
单击您希望切换断点的行的边距区域。
-
转到 。
-
按下 Ctrl+F8 。
-
创建一种 PHP 网页类型的调试配置
-
通过以下任一方式打开 运行/调试配置 对话框:
-
转到 。
-
按 Alt+Shift+F10 ,然后按 0 显示 编辑配置 对话框,或从弹出窗口中选择配置并按 F4 。
-
-
请点击
工具栏上的图标或按下 Insert 键。 从列表中选择 PHP 网页 配置类型。 PHP 网页 对话框打开。
-
指定配置名称。
-
从 服务器 列表中选择适用的调试服务器配置,或单击 浏览
。 并在 服务器 对话框中定义调试服务器配置,该对话框按照 创建 PHP 调试服务器配置 中的描述打开。
-
在 起始 URL 字段中,输入实现应用程序起始页面的文件的服务器路径。 指定相对于服务器配置根目录的路径( 服务器配置根目录 是通过服务器配置访问的 本地 或 远程 服务器上的文件树中最高的文件夹。 对于 in-place 服务器,它是项目根目录。 )。 下面的只读字段显示了应用程序起始页面的 URL 地址。 URL 地址会在您输入时动态生成。
-
指定用于打开应用程序的浏览器。 从 浏览器 列表中选择已配置的浏览器,或单击 浏览
,并在 Web 浏览器和预览 对话框中 指定其他浏览器 。
启动调试会话并检查挂起的程序
-
要开始调试,请单击工具栏上的 Debug 按钮
。
-
调试器在到达第一个断点时挂起后,分析 帧 以检查应用程序。 帧 对应于一个活动的方法或函数调用,并存储被调用方法或函数的局部变量、其参数以及支持表达式求值的代码上下文。 所有当前活动的帧显示在 窗口 面板的 调试工具窗口 中,您可以在它们之间切换,并在 变量 和 监视 面板中分析存储的信息。 有关更多信息,请参阅 检查挂起的程序 部分。
-
继续运行程序,并在再次暂停时检查其帧。
-
要手动控制程序执行,请使用 运行 菜单或工具栏按钮下的命令逐步执行代码:   F7 、   Shift+F8 、   F8 等。 欲了解更多信息,请参阅 逐步执行程序 。
-
要使程序自动运行到下一个断点,请选择 或按 F9 恢复会话。
-
指定要跳过请求的脚本
当您的应用程序包含使用 AJAX 的脚本时,此方法可能会很有用。 假设您有一个 menu-ajax-script.php ,它会“重新加载”您的网页的一部分。 此脚本运行正常,因此您无需调试它。 然而,在调试会话期间仍会请求此脚本。 要忽略对此脚本的传入连接,请将 menu-ajax-script.php 脚本添加到 跳过路径 列表中。
-
在 设置 对话框 ( Ctrl+Alt+S ) 中,前往 。
-
在打开的 跳过路径 页面上,配置一个“忽略列表”,其中包含脚本和脚本所在文件夹,如果 PhpStorm 收到对它们的传入连接,则不会调用它们。
-
要向列表中添加新条目,请单击
或按 Alt+Insert 。 然后单击
,并在打开的对话框中选择要跳过连接的文件或文件夹。
-
要从列表中删除条目,请选择它并单击
或按 Alt+Delete 。 现在,脚本将在收到对其的请求时执行。
-
-
要让 PhpStorm 在每次收到对要跳过的脚本的请求时通知您,请选中 通知关于跳过的路径 复选框。