配置 Zend 调试器
下载并安装 Zend 调试器
下载与您的操作系统对应的Zend Debugger 包。
在对应于您的 PHP 版本(例如php-7.0.x )的目录中找到ZendDebugger.so (Unix) 或ZendDebugger.dll (Windows) 文件。
将文件复制到 Web 服务器可访问的位置。
启用 Zend Debugger 与 PHP 解释器的集成
在编辑器中打开活动的php.ini文件:
在“设置/首选项”对话框 ( Ctrl+Alt+S) 中,单击PHP。
在打开的PHP页面上,单击CLI Interpreter字段旁边的。
在打开的CLI 解释器对话框中,配置文件只读字段显示活动php.ini文件的路径。单击在编辑器中打开。
找到或创建该
[Zend]
部分。[Zend]
要加载 Zend Debugger 扩展,请根据您的操作系统在该部分中添加以下行之一:zend_extension=<full_path_to_ZendDebugger.so>zend_extension=<full_path_to_ZendDebugger.dll>要允许从 PhpStorm 访问 Zend Debugger,请添加以下行:
zend_extension=<full_path_to_zend_debugger_extension> zend_debugger.allow_hosts=127.0.0.1 zend_debugger.expose_remotely=allowed_hosts zend_debugger.tunnel_min_port=<任何大于 1024 的整数值> zend_debugger.tunnel_max_port=<任何小于 65535 的整数值>该
zend_debugger.allow_hosts
参数的值是您的机器的 IP 以连接到服务器调试器。它可以是格式为逗号分隔的 IP 列表X.X.X.X
(例如,192.168.0.6)。重新启动您的 Web 服务器。
要检查 Zend Debugger 是否已正确安装和配置,请创建一个包含以下内容的文件:
<?php phpinfo();在浏览器中打开与文件对应的页面。输出应该包含Zend Debugger部分。
将 Zend 调试器与 PhpStorm 集成
按Ctrl+Alt+S打开 IDE 设置并选择PHP。
检查与所选 PHP 解释器关联的Zend Debugger安装:
在PHP页面上,从CLI Interpreter列表中选择相关的 PHP 安装,然后单击字段旁边的。该列表显示了 PhpStorm 中可用的所有 PHP 安装,请参阅配置本地 PHP 解释器和配置远程 PHP 解释器。
打开的CLI 解释器对话框显示以下内容:
所选 PHP 安装的版本。
与所选 PHP 安装(Xdebug 或 Zend Debugger)关联的调试引擎的名称和版本。如果没有配置调试器,PhpStorm 会显示相应的消息:
在验证调试引擎的配置中了解有关检查Zend 调试器安装的更多信息。
定义 Zend 调试器行为。单击PHP节点下的调试。在打开的Debug页面上,在Zend Debugger区域中指定以下设置:
在Debug Port字段中,指定 PhpStorm 与工具通信的端口。通过和键入在php.ini文件中指定的隧道内的端口号。有关详细信息,请参阅Zend 调试器 - 配置指令
zend_debugger.tunnel_min_port
zend_debugger.tunnel_max_port
要让 PhpStorm 通过调试端口字段中指定的端口接受来自 Zend 调试器引擎的任何传入连接,请选中可以接受外部连接复选框。
要在浏览器中使用调试器工具栏,请在“设置广播端口”字段中指定将调试器设置传递给浏览器的端口。
使用自动检测 IDE IP复选框来启用和禁用热 IP 地址的自动检测。选择该复选框后,PHPSTORM会通过
debug_host
参数检测要发送到Zend调试器的所有主机IP地址。所有检测到的 IP 地址都列在右侧的字段中。当您使用Vagrant或VirtualBox或其他虚拟化工具时,自动检测 IP 地址很有帮助。清除复选框以阻止自动检测主机 IP 地址并在字段中明确指定所需的地址。
在External Connections区域中,指定您希望 PhpStorm 如何处理从主机和通过未注册为部署服务器配置的端口接收的连接。
通过未注册的服务器配置忽略外部连接:选中此复选框可让 PhpStorm 忽略从主机和未注册为部署服务器配置的端口接收的连接。选中此复选框后,PhpStorm 不会尝试自动创建部署服务器配置。
Break at first line in PHP scripts : 选中此复选框可在调试器与 PhpStorm 之间的连接建立后立即停止(而不是在到达第一个断点之前自动运行)。或者打开 在主菜单
最大限度。同时连接使用此旋转框来限制可以同时处理的外部连接的数量。
如果来自Z-Ray 系统的请求因过于频繁地调用 PhpStorm 调试器而惹恼您,要阻止它们,请选中忽略 Z-Ray 系统请求复选框。
配置 Zend Debugger 以在按需模式下使用
PhpStorm 支持On-Demand模式,您可以在其中为您的全局 PHP 安装禁用 Zend Debugger,并仅在调试命令行脚本或需要代码覆盖率报告时按需自动启用它。这让您的命令行脚本(包括 Composer 和单元测试)运行得更快。
禁用命令行脚本的 Zend 调试器:
在设置/首选项对话框 ( Ctrl+Alt+S) 中,转到PHP。
从PHP 可执行文件列表中,选择相关的 PHP 解释器并单击它旁边的。在打开的CLI 解释器对话框中,单击配置文件旁边的在编辑器中打开链接:<path to php.ini>文件。关闭所有对话框并切换到打开php.ini文件的选项卡。
在php.ini文件中,找到该
[Zend]
部分并通过添加;
介词来注释其中的以下行:;zend_extension=<full_path_to_ZendDebugger.so>;zend_extension=<full_path_to_ZendDebugger.dll>打开CLI Interpreters对话框并单击PHP 可执行文件字段旁边的。PhpStorm 通知您未安装调试器:
要使 PhpStorm 在必要时激活 Zend Debugger ,请在Additional区域的Debugger extension字段中指定它的路径。手动键入路径或单击并在打开的对话框中选择位置。