前提

刚从Windows转到OS X,工作需要给phpstorm安装断点调试工具xdebug,一开始没当回事,心想不就个插件吗,上网看看文档还不是分分钟搞定,没想到就是噩梦的开始。整整两天,翻遍谷歌和百度以及各大论坛,填了无数的坑,最终才安装完毕。
所以在这里我把安装的过程分享出来,希望后来者不要被浪费宝贵的时间了。T_T

配置

  • 系统:macOS High Sierra10.13

  • 开发环境:XAMPP for OS X 7.1.11

  • 开发工具:PHPStorm2017.2,iTerm2

  • 安装插件:xdebug

  • 注意事项:视具体情况,需要翻墙,请自行处理。

  • 特别鸣谢:见文末

正文

1.1、安装XAMPP
先去下载XAMPP,我使用的是7.1的版本,具体的根据实际需求决定:

打开之后是一个.app格式的文件,双击,一步一步走下去即可;
如果你已经安装过了,但是也是出现了一些问题,并且自己修改过里面的配置文件,那么我建议你先把你的数据保存好,然后卸载重装,否则如果我们的环境不一样,最后我配置成功了,你的还是失败,到时候别说我瞎写骗人哟~
可以在命令行中卸载:

sudo rm -rf /Application/XAMPP

安装成功:

(敲黑板)

下面是重点!!!

当你启动XAMPP,会提示你Apache无法启动


看到这一幕,当时我就不乐意了:网速这么差,我辛辛苦苦下了半天安装包,你跟我说你不能启动?!
进命令行使用start执行xampp,提示:

是的,你没有看错,提示你启动失败,有个王八蛋已经先你一步把你的坑给占了。
其实原因很简单

OS X系统内置了php的环境

前面我已经说过了,我是刚从Windows转到Mac上,在Windows上哪有这么好的待遇,还能提前给你把环境安装好,所以我一直陷在了一个思维定式里面,以为是我操作有问题,上网找各种资料,使用命令:

sudo /usr/sbin/apachectl stop

然后再在XAMPP软件中手动点击启动按钮,就可以解决这个问题。
这条命令的意思就是把Mac自带apache服务给关闭了,那我们再启动第三方的开发环境(也就是XAMPP),这时候没有人占用端口了,当然也就能启动了。
所以这里一定要注意,很多人出错都是出错在这里,都把配置文件写在了Mac的PHP环境中的php.ini文件中,最后肯定无法生效。

OK,既然我们安装了XAMPP,那么肯定是希望以它为主,所以需要在Mac的/etc/paths中,添加它的环境变量的路径:

/Applications/XAMPP/bin
/Applications/XAMPP/xamppfiles/bin

1.2、选择xdebug版本
xdebug有很多版本,当你第一次看到这么多版本的时候,我相信你和我一样会选择困难症发作的,不要方,开发者考虑到我们这些特殊的群体,会根据我们具体的环境给你推荐合适的版本进行下载(手动点赞)
首先,获取你的环境信息,即phpinfo();


因为XAMPP默认htdocs为根目录,所以我的代码都放在这个目录下,当然也是可以改的,但是不在本文的范围之内。
在浏览器输入:localhost/info.php


如果出现这个页面,就说明安装成功了
有人会说为什么我在页面中打印出来的版本号和我在终端中使用php --version打印出来的版本号不一样呢?
道理同上,浏览器中显示的是XAMPP环境下的php版本,终端中显示的是Mac系统下的php版本。

轻轻的插一句:
如果你只是希望在默认的系统环境下安装xdebug,不想安装XAMPP,这里有一篇文章也许能帮助到你:
Mac上搭建phpStorm和Xdebug教程;出现phpinfo()和php -v版本不一致问题

言归正传
1.3、安装xdebug及修改配置文件

首先需要明确一点!
我们是要把xdebug这个插件安装在Mac下的php环境中!
注意!不要弄混!
虽然我们使用的是XAMMP,但是xdebug一定要安在Mac下的php环境中!
网上很多教程都没有说明白这一点,让我走了很多弯路!

使用Mac自带的终端,运行php -i,之所以这一步用自带的终端,是因为在实际操作中,iTerm2内容显示不完整;
然后会出现很长一大段代码,将这些代码从头到尾完完整整的复制下来,粘贴到下面这个网站中去:
https://xdebug.org/wizard.php
这就是xdebug开发者贴心的为我们准备的版本选择工具,
将你刚刚复制的那一大串源码全部复制进入,然后点下面的:Analyse my phpinfo() output


接下来又到了重点啦~


这个页面中的内容就是官方指导的安装方法,我们下面就会按照这些步骤进行安装:
(敲黑板!!!)
下面我是按照当时给我的安装步骤走的,流程都一样,严格按照页面显示的步骤走就行了:
第一步:下载xdebug安装包
下载完成之后自己不要解压,放在原处就好
第二步:使用命令行在该目录下解压这个安装包
第三步:进入解压后的文件夹内
第四步:运行phpize
这里应该会有很多人出错,我解释一下,phpize是一个插件(具体是什么我也不知道),我是利用homebrew来安装的:
mac 利用brew安装php开发环境
第五步:执行./configure
第六步:使用make编译
第七步:执行make install
第八步:分别执行
sudo cd /Applications/XAMPP/xamppfiles/lib/php/extensions/no-debug-non-zts-20131226/xdebug-2.5.0rc1
sudo make
sudo install
最后出现这个页面就对了:

第九步:修改XAMPP环境下的php.ini配置文件
sudo vim /Applications/XAMPP/xamppfiles/etc/php.ini

zend_extension = /Applications/XAMPP/xamppfiles/lib/php/extensions/no-debug-non-zts-20160303/xdebug.so
zts-20131226/xdebug.so"
xdebug.remote_autostart=On
xdebug.remote_enable=On
xdebug.remote_mode="req"
xdebug.remote_host="localhost" //或者127.0.0.1
xdebug.remote_port=9999 //默认是9000,选9999避免可能和php-fpm冲突
xdebug.remote_handler="dbgp"
xdebug.idekey="PHPSTORM"
xdebug.max_nesting_level=600

最后:重启服务器 sudo apachectl restart

2、配置phpstorm
2.1、配置php。使其找到xdebug插件
废话不多说,直接上图

2.2、配置xdebug
统一说一下:下面的参数,要和你在php.ini末尾添加进去的那些文字的参数保持一致

2.3、配置Servers

2.4、配置Configurations
退出设置项,返回到phpstorm的主页面,点击那个右上角的倒三角形

添加新的PHP Web Application

配置

具体的调试方法我就不在这里写了,网上一大堆,如果懒得找,可以看最后的鸣谢部分。

特别感谢!

手把手教mac系统xampp环境下给phpstorm安装Xdebug
十分钟搞定mac下的phpstorm增加xdebug调试

【搜遍互联网,集百家之长】环境配置从入门到放弃之Mac环境下,安装XAMPP,给phpstorm安装Xdebug调试工具...相关推荐

  1. 【学术】集百家之长,有一家之言

    又到了一年一度的和其他博士生交流的时间. 一边听,一边记忆了几个带有总结意味的句子,作为话题之间的天然分界限. 中间穿插的案例,有的是用来佐证话题的,有的可能是临时想起来的.案例信息的准确性没有经过考 ...

  2. 目标检测:Yolov5集百家之长

    首发于:公众号YueTan (1920,被识别为泰迪熊?有排面) 背景 2017年底,我已毕业多年了.用起Excel和PPT.研究车的质量问题俨然老手的样子.有一晚,照着一个帖子跑了一下Yolov1的 ...

  3. 【集百家之长】阻容降压电路

    1.工作原理: 阻容降压的工作原理是利用电容在一定的交流信号频率下产生的容抗来限制最大工作电流.同时在电容器上串联一个阻性元件,则阻性元件两端所得到的电压和它所产生的功耗完全取决于这个阻性元件的特性. ...

  4. 《看聊天记录都学不会Python到游戏实战?太菜了吧》(9)集万家之长不死 python

    本系列文章将会以通俗易懂的对话方式进行教学,对话中将涵盖了新手在学习中的一般问题.此系列将会持续更新,包括别的语言以及实战都将使用对话的方式进行教学,基础编程语言教学适用于零基础小白,之后实战课程也将 ...

  5. Matter集百家所长,智能家居看到未来

    ​当今智能家居解决方案还处于碎片化或单独品牌的局部联通,整个行业没有统一的硬件标准和通信协议,来自于不同厂家的智能电视.智能灯光.智能冰箱等设备,无法通过同一个中央控制系统进行统一的控制和管理.而随着 ...

  6. (猿如意)—— 集百家之所长

    背景 前文再续,书接上一回.上一篇文章已经介绍了,猿如意是由CSDN官方推出的一款面向开发者的辅助开发工具箱.本文主要介绍一下这个百宝箱的种种常用工具,助你在日常开发中得心应手,高效工作! 下载地址 ...

  7. 小小算法,可笑可笑——摩尔投票法(集万家之长)

    摩尔投票法 不多说,先上题目. 问题描述:leetcode 229题 给定一个大小为 n 的整数数组,找出其中的所有的出现超过 ⌊ n/3 ⌋ 次的元素. 这还不简单!直接暴力计数,上map,easy ...

  8. 百家企业信息化调查报告

                                     百家企业信息化调查报告   综述 2001年第三季度,国家经贸委对国家重点企业进行了"企业信息化水平问卷调查",从 ...

  9. 百度百家号“漏洞”大曝光 一篇文章十几万阅读量 收入上万

    越来越发现自媒体的好处,就是现在太多的平台都提供入口,基本是四大门户还有三大巨头互联网公司,百度.腾讯 .阿里都提供!那么接下来我要分享的是中国最大的搜索引擎公司-百度!,相信最近很多人都知道百度百家 ...

最新文章

  1. 阿里巴巴的技术专家,是如何画好架构图的?
  2. 关于unity 中使用AssetBundle加载资源,shader偶尔会丢失的问题解决办法
  3. 2、MapReduce的job提交启动过程
  4. M1 Mac:支持 USB-C,但不完全支持
  5. 点击按钮,文本框如何不失去焦点
  6. Qt编写onvif搜索和云台控制工具源码
  7. SIM800A上传数据到Onenet平台命令
  8. 当电子工程师十余年,感慨万千
  9. 用户登录和权限认证之 —— JWT
  10. 前端导出excel,单独设置表头
  11. 西安电子科技大学计算机学院评论,放弃985,选择西安电子科技大学计算机专业,网友表示没毛病...
  12. About norms(范数)
  13. Frontiers in Neuroscience:弥散张量成像(DTI)研究指南
  14. CSAPP第八、九章家庭作业(原书第二版)
  15. Linux服务器配置与管理项目教程(CentOS7 /RHEL 7)(第三版)题库带答案
  16. 微信小程序一个你可能需要的功能
  17. Detecting Visual Relationships with Deep Relational Networks(阅读笔记)
  18. 网络舆情源头管理方案
  19. 平面解析几何----过抛物线上一点作互相垂直的两条直线交抛物线与点AB,AB恒过定点P的坐标
  20. Vastbase G100集群部署

热门文章

  1. usb接口电路_RS232接口与RS485的不同之处
  2. MATLAB 2018a软件安装教程
  3. c++重载运算符_Python 运算符重载
  4. 如何做出受欢迎的字体排版风格?
  5. c odac 连接 oracle,使用ODAC112040Xcopy_64bit 将sql server连接到oracle
  6. 扫地机器人湿地_口碑最好,用户认可度最高,浦桑尼克新款扫地机M7 MAX上手体验...
  7. mysql seq 重置_需要在Oracle中重置序列的值
  8. Spring 详解(五):Spring声明式事务
  9. 服务器怎么导出数据库文件,怎么导出服务器数据库文件
  10. IS服务器下做301永久重定向设置方法