• 如何结合phpstorm配置在docker中的xdebug


    作为一个资深的php开发者,我在之前的一篇文章里面也讲了如何搭建lnmp的docker镜像,这里不再赘述。在基于镜像运行容器中我也安装了xdebug,于是考虑用phpstorm来配置xdebug。
    使用xdebug的好处很多:1.可以让开发者进行断点调试。2.并可以收集和显示运行阶段的变量和值。3.减少不必要的代码调试。这样php开发者就不用每次手动写代码进行断点调试,不用"var_dump"、"echo" 、"print_r"之类的输出语句打印变量。而且xdebug还提供了可以step in(步进)到调用函数内部,这样更方便进行debug。
    首先给一个phpstorm和xdebug互相调用的图:
    0
    由此可见,需要配置好docker中的xdebug的配置,还有就是IDE中的xdebug相关配置。
    1.配置docker中的xdebug。
    先进入docker容器,然后使用php --ini命令查找到xdebug的配置文件地址。
    用vim打开20-xdebug.conf,增加如下所示的配置:
    zend_extension=xdebug.so
    [XDebug]
    xdebug.start_with_request = yes
    ;xdebug.remote_handler = "dbgp"
    xdebug.remote_connect_back=1
    xdebug.remote_enable=1
    xdebug.client_host=192.168.3.6
    xdebug.remote_port=9003
    xdebug.remote_log = "/var/log/dnmp/php.xdebug.log"
    xdebug.idekey=PHPSTORM
    xdebug.mode=debug
    其中xdebug.client_host是xdebug3的新配置,可以填写宿主机(就是你真实电脑)的ip,这是关键,千万不要填写什么172开头的,那是docker同网段的ip,不是本机真正的ip。如果你是的mac,可以用ifconfig查看你的en0的ip,其他操作系统的命令类似。
    然后remote_port就是监听的端口号,建议用900x端口号,这样不会和常见已用的端口号重复。完成上面步骤,记得重启容器让配置生效
    2.phpstorm的配置很简单,先选择ide的preferences,然后选择debug选项面板,如图所示。
     
    0
    然后再配置Server,如下图所示。
    0
    最后配置php web page,用上一步配置好的server即可,如下图所示。
    0
    然后就可以开始快乐地使用xdebug了。
  • 相关阅读:
    数据结构-堆(完全二叉树)
    发布项目到github上
    postgresql中uuid的使用
    [数据集][目标检测]井盖未盖好检测数据集VOC+YOLO格式20123张2类别
    CSAPP第四章:Y86 SEQ(指令顺序执行)的硬件结构
    函数式接口@FunctionalInterface
    万门大学倒闭了,童哲连夜跑路了
    SSH 与 SSM
    Android自定义权限CVE漏洞分析 (IEEE论文)
    Linux学习(7)——开机、重启和用户管理
  • 原文地址:https://www.cnblogs.com/freephp/p/15934088.html