PHPStorm+Xdebug调试本地PHP脚本

注意本文将要讲的是使用phpstorm和xdebug调试本地php的脚本,例如编写php脚本处理文本、测试程序等,并不是php的web程序。而web程序将在专栏中的其他文章中详细介绍。

环境

  • php运行环境安装了xdebug扩展,可以通过php -m | grep xdebug检查是否安装成功;
  • 安装phpstorm(有条件建议购买正版,支持正版);

Xdebug调试

  1. 首先在phpstorm编写脚本:
<?php
namespace test;

class TestClass
{
    public $test_attr1;
    private $test_attr2;

    public function __construct($test_attr1, $test_attr2)
    {
        $this->test_attr1 = $test_attr1;
        $this->test_attr2 = $test_attr2;
    }
}

$test = new TestClass('a', 'b');

echo $test->test_attr1;

exit;
  1. 从菜单栏Run->Edit Configuations进入运行环境的配置窗口,点击窗口左上角的+号,选择PHP Script
    在这里插入图片描述
  2. FIle栏点击右侧的选择按钮,选择当前脚本,点击确认,然后点击Apply->OK确认配置:
    在这里插入图片描述
  3. 成功之后工具栏上会出现一个名为Unamed的运行配置,旁边的运行和调试按钮可以点击:
    在这里插入图片描述
  4. 现在可以在代码左侧的行号旁边设置断点调试程序啦:
    在这里插入图片描述

One More Step

在本地调试模式下,是不需要配置任何参数的。因为phpstorm这个IDE帮我们做了很多事情。
该模式下调试的原理图如下:
在这里插入图片描述
可以将整个过程都看做在phpstorm里面进行的。对这个流程,我的理解如下:

  1. 点击Debug按钮,触发调试过程,phpstorm会调用php命令执行脚本,并根据phpstorm的配置指定若干xdebug参数,这一点可以在启动调试后的Console窗口看到:在这里插入图片描述
    在这个命令里指定的参数有:
  • remote_enable:启动远程调试
  • remote_mode:指定调试模式
  • remote_port:指定调试端口
  • remote_host: 指定调试host ip
    这些参数将在后续的Xdebug文档中详细介绍。
    最关键的是指定了host ip(127.0.0.1)和port(9000)。Script调试下,host ip应该是本机,而port(9000)是在phpstorm的配置里设置的,可以更改,在后续的remote debug模式下,特别需要关注这个设置。

无论你在php.ini里有没有设置xdebug参数(remote debug模式的常用手法),这里命令行将会覆盖这些参数的设置。也就是说会以这里指定的参数为准。

这样也就不难理解了,接下来:
2. php脚本执行的生命周期开始,由于php安装了xdebug扩展,xdebug会按照命令行指定的参数配置(127.0.0.1:9000)去请求9000端口;
3. 此时的9000端口正被phpstorm实现的xdebugclient监听,自然被它接收到了,之后就在phpstorm中触发了调试过程,一步一步调试,直到最后,这一点,可以在调试状态下查看9000端口得知:
在这里插入图片描述
4. 调试结束后,所有链接都断开,php生命周期结束,phpstorm的xdebugclient也停止对9000端口的监听;

OK,到这里,本地的scrip调试就弄得差不多了。虽然这种用法不常见,但对于我们了解phpstorm+xdebug的工作原理是很有帮助的。

感谢阅读~

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
本地环境的搭建和配置是进行开发工作的基础,以下是xampp、phpstormxdebug和chrome的配置和断点调试的步骤: 1. 安装和配置XAMPP: - 下载并安装XAMPP,它是一个集成了Apache、MySQL和PHP的开发环境。 - 打开XAMPP控制面板,启动Apache和MySQL服务。 - 在浏览器地址栏输入localhost,确认XAMPP是否正常运行。 2. 安装和配置PHPStorm: - 下载并安装PHPStorm集成开发环境。 - 打开PHPStorm,创建或导入你的项目。 - 在设置中的PHP选项中配置PHP可执行程序路径,选择XAMPP中的php.exe文件。 - 配置项目的运行/debug配置,选择Xdebug作为调试引擎。 3. 配置Xdebug: - 打开xampp\php\php.ini文件,在文件末尾添加以下代码: ``` [Xdebug] zend_extension = path_to_xampp\php\ext\php_xdebug.dll xdebug.remote_enable = 1 xdebug.remote_handler = dbgp xdebug.remote_host = localhost xdebug.remote_port = 9000 ``` 4. 配置Chrome浏览器: - 在Chrome浏览器中安装Xdebug Helper插件。 - 点击插件图标,选择设置,将IDE Key设置为PHPStorm。 - 启用Xdebug Helper插件,并确保它为绿色以表示调试已启动。 5. 调试代码: - 在PHPStorm中设置断点,可以通过点击代码行号来设置断点。 - 在Chrome浏览器中访问你的网页应用。 - 当代码运行到断点处时,PHPStorm会自动跳转到调试模式并在IDE中显示当前状态。 - 你可以使用PHPStorm调试工具栏来控制代码的执行、查看变量的值以及观察程序的执行流程。 通过以上步骤,你可以在本地环境中使用XAMPP、PHPStormXdebug和Chrome进行代码的断点调试。你可以设置断点、监控变量的值,以及通过PHPStorm调试工具栏控制代码的执行流程,这将有助于你更有效地调试和排除代码中的问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值