PhpStorm 2025.2 Help

从命令行启动调试会话

您可以从命令行启动 PHP CLI 脚本的调试,PhpStorm 会监听传入的调试器连接。

  1. 设置断点 所需的位置。

  2. 单击工具栏/状态栏上的 “开始监听 PHP 调试连接”按钮开始侦听PHP 调试连接 或从主菜单中选择 运行 | 开始侦听PHP 调试连接

  3. 根据您使用的调试引擎(Xdebug 或 Zend Debugger),使用调试器选项启动脚本。

使用 Xdebug 启动脚本

Xdebug 提供多种 配置选项 ,可用于让 PHP 解释器连接到 PhpStorm。 这些参数必须通过 -d 命令行开关传递给 PHP 解释器。 更方便的方法是设置一个环境变量,这样您就不需要每次都提供 -d 开关。

使用 PHP 命令行开关启动带调试功能的脚本

  • 使用以下命令行选项启动 PHP:

    php -d xdebug.mode=debug -d xdebug.client_host=127.0.0.1 -d xdebug.client_port=9003 -d xdebug.start_with_request=yes path/to/script.php
    php -d xdebug.remote_enable=1 -d xdebug.remote_mode=req -d xdebug.remote_port=9000 -d xdebug.remote_host=127.0.0.1 -d xdebug.remote_connect_back=0 path/to/script.php

使用环境变量启动带调试功能的脚本

  1. 设置一个配置 Xdebug 的环境变量:

    • 对于 Windows:

      set XDEBUG_MODE=debug& set XDEBUG_SESSION=1
      set XDEBUG_CONFIG=remote_enable=1 remote_mode=req remote_host=127.0.0.1 remote_port=9000 remote_connect_back=0
    • 对于 macOS / Linux

      export XDEBUG_MODE=debug XDEBUG_SESSION=1
      export XDEBUG_CONFIG="remote_enable=1 remote_mode=req remote_host=127.0.0.1 remote_port=9000 remote_connect_back=0"
  2. 正常启动脚本:

    php path/to/script.php

    您可以选择使用 Xdebug 的 remote_autostart (适用于 Xdebug 2)或 start_with_request (适用于 Xdebug 3)设置,以便在运行每个脚本时始终启动调试会话。

使用 Zend Debugger 启动脚本

Zend Debugger 提供多种 配置选项 ,可用于让 PHP 解释器连接到 PhpStorm。 这些参数必须通过环境变量传递给 PHP 解释器:

set QUERY_STRING=start_debug=1&debug_host=127.0.0.1&no_remote=1&debug_port=10137&debug_stop=1
export QUERY_STRING="start_debug=1&debug_host=127.0.0.1&no_remote=1&debug_port=10137&debug_stop=1"

配置路径映射

要告知 PhpStorm 应为某台机器的连接使用哪个路径映射配置,请将 PHP_IDE_CONFIG 环境变量的值设置为 serverName=SomeName ,其中 SomeName调试服务器配置的名称,该配置在 服务器 页面中定义,请参阅 创建 PHP 调试服务器配置。 根据您使用的操作系统,以以下格式之一设置值:

set PHP_IDE_CONFIG=serverName=SomeName
export PHP_IDE_CONFIG="serverName=SomeName"

故障排查

  • 调试服务器配置未通过 PHP_IDE_CONFIG 环境变量指定。 在这种情况下,PhpStorm 会从 $_SERVER['SSH_CONNECTION'] 检测主机和端口,并建议创建一个新的 调试服务器配置 (如果不存在)。 即使没有隧道,这也适用于通过 ssh的所有连接。

  • 调试服务器配置未通过 PHP_IDE_CONFIG 环境变量指定,且 $_SERVER['SSH_CONNECTION'] 未定义。 在这种情况下,会显示一个警告,并附有通过 PHP_IDE_CONFIG 环境变量指定 调试服务器配置的说明链接。

  • 调试服务器配置通过 PHP_IDE_CONFIG 环境变量指定,但使用了错误的格式,PhpStorm 会显示一条错误消息并附上说明。

  • PHP_IDE_CONFIG 环境变量配置正确,但指定的 调试服务器配置不存在,PhpStorm 会显示一个警告,并附有指向 服务器 页面的链接。

最后修改日期: 2025年 9月 26日