前言  

  php是脚本型程序 每次出错都要手动exit断点程序不是很方便

  哪里有需求哪里就有生产,Xdebug可以实现对php的断点调试。下面将我个人的安装经历分享给大家。

  运行环境 windows 、lamp、phpstorm 、chrome (配置方法一样 Ubuntu也通用)

一、首先安装xdebug

  安装xdebug比较简单 ,运行php -i >phpinfo.txt  或者 echo phpinfo();将全部信息贴到https://xdebug.org/wizard.php这个网站提示的文本域中点击

  如下图红色的框是网站提示的安装步骤,黄色的框是我已安装的信息(可以忽略)。

  

    补充在编辑php.ini文件的时候多添加几行

    

[Xdebug]
zend_extension = "H:\install\phpstudy_pro\Extensions\php\php7.3.4nts\ext\php_xdebug-2.9.4-7.3-vc15-nts-x86_64.dll" xdebug.idekey="PHPSTORM"
xdebug.remote_handler = "dbgp"
xdebug.remote_mode = "req"
xdebug.remote_host=127.0.0.1
xdebug.remote_enable=on
xdebug.remote_port = 9100 //这是设置端口 可以改 只要下面这是phpstorm 一致就可以
xdebug.remote_autostart = no

二、安装chrome  xdebug helper插件

  打开 chrome的webstore搜索 xdebug 我已经添加了。需要翻墙  可以下个vpn 蓝灯  慕风都可以 或者配置host

    

  安装完之后 浏览器会有一个小甲虫  右击点击选项 选择phpstorm  点击save退出

  

  备注:

    安装完 可以打印phpinfo  查看xdebug信息 ,或者php -v 查看下有没有xdebug信息

  

三、配置phpstorm

  1、servers设置

    菜单栏  file->setting->php->servers(找不到可以搜索server就出来了)

  

  

  2、php设置 选择自己的php版本(注如果遇到图2这种情况点击标记的按钮找到自己的php.exe文件即可)

          

  3 设置debug  勾选一下  会忽略端口冲突等信息

  

  4 设置dbgp

  IDE key 是上面php.ini里面设置的key

  

这边配置localhost 就行,具体的debug项目域名再run那边配置

    

  

5 编辑结构选择一下自己配置的域名  startUrl 可以根据自己的项目配置  我的域名已经指向项目根目录了  所有直接是/

      

四、启用xdebug

  1、点击phpstorm右上角的电话 绿色波纹就是开始监听了

  

  2、右击浏览器右上角的小甲虫 选择debug

  

  3、设置断点

    

  4、访问设置断点的控制器 phpstorm会弹出调试信息  可以点击小绿三角 调试下一个断点

    

五、其他情况说明

  1、端口占用(9000 port is busy)

    解决方法:更换端口

      那就编辑php.ini换个端口对应的 file->setting->php-> debug 也要换掉

        重新启动下php 再调试看看。

  2、无法映射到服务器文件(file path is not mapped to any file path on server. edit path mappings to fix the problem)

    解决方法:配置项目在服务器的绝对路径

       

  3、调试总是断点在index.php 的第一行

    

 附上phpstorm 官方配置说明:

  https://blog.jetbrains.com/webide/2011/03/configure-php-debugging-in-phpstorm-2-0/

phpstorm 配置 xdebug调试工具的更多相关文章

  1. 在windows10环境下给PHPStorm配置xdebug断点调试功能

    笔者的开发环境: wampserver2.5系统环境包 操作系统:windows10 64位专业版. php版本:php5.512 Apache版本:2.49 好了下面介绍,phpstorm配置xde ...

  2. 为 PhpStorm 配置 Xdebug 来调试代码

    当项目越来越复杂,排错就越发困难. 你以为代码是这么运行的,但就是有未想到的功能导致流程变得不可捉摸. 此时我们需要调试啊调试... PhpStorm 是一款优秀的 PHP IDE,排除其 Java ...

  3. PHPStorm配置Xdebug官方文档

    1 配置Xdebug 下载Xdebug 下载与您的PHP版本兼容的Xdebug扩展,并将其保存在该php/文件夹中. php/文件夹 的位置是在安装PHP引擎期间定义的. 如果您使用的是AMP软件包, ...

  4. 【总结1】PhpStorm配置XDebug(远程)调试PHP

    配置PhpStorm调试PHP 第一步:配置 XDebug 下载安装XDebug到本地环境,打开php.ini,参考配置如下: [XDebug] zend_extension = "D:\P ...

  5. phpstorm配置Xdebug进行调试PHP教程

    运行环境: PHPSTORM版本 : 8.0.1 PHP版本 : 5.6.2 xdebug版本:php_xdebug-2.2.5-5.6-vc11-x86_64.dll ps : php版本和xdeb ...

  6. phpstorm配置Xdebug进行调试

    运行环境: PHPSTORM版本 : 8.0.1 PHP版本 : 5.6.2 xdebug版本:php_xdebug-2.2.5-5.6-vc11-x86_64.dll ps : php版本和xdeb ...

  7. PHPStorm配置xdebug(phpStudy/wamp)

    一.下载并配置XDebug wamp环境: 1.获取xdebug

  8. Mac环境下PHPstorm配置xdebug开发调试web程序

    一.安装PHP的xdebug扩展 安装xdebug(技巧,为了找到适配的版本,让xdebug网站根据phpinfo()函数输出分析找到对应的方法及安装步骤:如果安装了多个PHP版本的话,尽量用phpi ...

  9. PhpStorm配置Xdebug调试

    安装xdebug 去官网下载对应版本的xdebug扩展 XDEBUG EXTENSION FOR PHP | DOWNLOADS 如何选择正确版本 输出phpinfo()函数的内容 查看输出页面的网页 ...

随机推荐

  1. 【.net 深呼吸】细说CodeDom(6):方法参数

    本文老周就给大伙伴们介绍一下方法参数代码的生成. 在开始之前,先补充一下上一篇烂文的内容.在上一篇文章中,老周检讨了 MemberAttributes 枚举的用法,老周此前误以为该枚举不能进行按位操作 ...

  2. Linux 内核概述 - Linux Kernel

    Linux 内核学习笔记整理. Unix unix 已有40历史,但计算机科学家仍认为其是现存操作系统中最大和最优秀的系统,它已成为一种传奇的存在,历经时间的考验却依然声名不坠. 1973 年,在用 ...

  3. accept_mutex与性能的关系 (nginx)

    注:运行环境CentOS 6+   背景      在对启动了20个worker的nginx进行压力测试的时候发现:如果把配置文件中event配置块中的accept_mutex开关打开(1.11.3版 ...

  4. 在Openfire上弄一个简单的推送系统

    推送系统 说是推送系统有点大,其实就是一个消息广播功能吧.作用其实也就是由服务端接收到消息然后推送到订阅的客户端. 思路 对于推送最关键的是服务端向客户端发送数据,客户端向服务端订阅自己想要的消息.这 ...

  5. hibernate多对多关联映射

    关联是类(类的实例)之间的关系,表示有意义和值得关注的连接. 本系列将介绍Hibernate中主要的几种关联映射 Hibernate一对一主键单向关联Hibernate一对一主键双向关联Hiberna ...

  6. OpenCASCADE BRep Projection

    OpenCASCADE BRep Projection eryar@163.com 一网友发邮件问我下图所示的效果如何在OpenCASCADE中实现,我的想法是先构造出螺旋线,再将螺旋线投影到面上. ...

  7. Android权限管理之RxPermission解决Android 6.0 适配问题

    前言: 上篇重点学习了Android 6.0的运行时权限,今天还是围绕着Android 6.0权限适配来总结学习,这里主要介绍一下我们公司解决Android 6.0权限适配的方案:RxJava+RxP ...

  8. 关于python的bottle框架跨域请求报错问题的处理

    在用python的bottle框架开发时,前端使用ajax跨域访问时,js代码老是进入不了success,而是进入了error,而返回的状态却是200.url直接在浏览器访问也是正常的,浏览器按F12 ...

  9. 使用NUnit为游戏项目编写高质量单元测试的思考

    0x00 单元测试Pro & Con 最近尝试在我参与的游戏项目中引入TDD(测试驱动开发)的开发模式,因此单元测试便变得十分必要.这篇博客就来聊一聊这段时间的感悟和想法.由于游戏开发和传统软 ...

  10. iOS之App Store上架被拒Legal - 5.1.5问题

    今天在看到App Store 上架过程中,苹果公司反馈的拒绝原因发现了这么一个问题: Legal - 5.1.5 Your app uses background location services ...