Mac+MAMP+PhpStorm+Xdebug+Chrome搭建PHP调试环境

1. MAMP

教授比较推荐MAMP,我也觉得MAMP对于我这样的废柴来说简单又友好。MAMP分为免费版(灰色图标)和收费的PRO(蓝色图标),如果只想要一键启动,安装时注意勾掉选项,只安装免费版就好。
下载:https://www.mamp.info/en/
有些安装过MySQL Server的电脑会出现无法在MAMP中启动MySQL Server的情况,一般来说移除MySQL就可以解决问题,切记MySQL的移除不是往垃圾箱里一拖就能解决的,我粗暴操作的结果就是最后不得不重装了系统。
正常启动如图:

Mac+MAMP+PhpStorm+Xdebug+Chrome搭建PHP调试环境_第1张图片

2.PHPStorm

方案一:PHPStorm提供学生免费。
申请地址:https://www.jetbrains.com/student/
要求提供学校邮箱,如果是海外的学生认证应该挺快的,也不需要上传学生证。

方案二:不是学生,可以使用神秘的方式获得一个激活码:
免费获取一个激活码:http://idea.lanyus.com/
使用前请注意将“0.0.0.0 account.jetbrains.com”写进hosts文件中,使用命令:
sudo emacs /etc/hosts

3.Xdebug
对于Mac用户来说,下载Xdebug理论上很方便。
官网安装指导文档:https://xdebug.org/docs/install

首先要安装Homebrew,使用命令:
/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

请注意不要使用brew install homebrew/php/php71-xdebug,已经于2018年初失效,我们还是要乖乖按照官网文档的指引使用PECL,使用命令:
pecl install xdebug

---如果反馈“pecl: command not found”,有几种解决方案:

  1. 通过homebrew重装PHP,使用命令:
    brew install [email protected]
    通过 find -L "$(brew --prefix [email protected])" -name pecl -o -name pear可以寻找pear和pecl命令。
  2. 仍然无法使用pecl,试试重连,使用命令:
    brew unlink [email protected] && brew link [email protected] --dry-run && brew link --overwrite --force [email protected]
    (以上解决方案来自 https://stackoverflow.com/questions/32893056/installing-pecl-and-pear-on-os-x-10-11-el-capitan-macos-10-12-sierra-macos-10)

4. 配置php.ini和xdebug扩展
如果现在搜索php.ini,可能会跳出无数个版本的php.ini,只要修改对应版本的文件即可生效。
查看版本有两个方法,打卡MAMP,MAMP->Preference->PHP->Standard Version。
或者使用phpinfo()查看。
在php.ini中添加

[xdebug]
zend_extension="/Applications/MAMP/bin/php/php7.2.7/lib/php/extensions/no-debug-non-zts-20170718/xdebug.so"
xdebug.remote_enable=1
xdebug.remote_autostart=on
xdebug.remote_log="/var/log/xdebug.log"
xdebug.remote_port=9000
xdebug.remote_handler="dbgp"
xdebug.idekey="PhpStorm"

zend_extension后面跟的地址来源于php.ini里写入的xdebug.so地址,例如:

Mac+MAMP+PhpStorm+Xdebug+Chrome搭建PHP调试环境_第2张图片

--- 既然修改php.ini,不如顺便打开display_errorserror_reporting
搜索display_errors,将Off改成On.
搜索error_reporting,改成E_ALL.
display_error权限高于error_reporting,如果前者是Off, error_reporting = E_ALL 应该是不能起效的。

保存php.ini,重启PHP,使用phpinfo()查看Xdebug是否开启,如图:


注意这里的端口应该是9000:

5.配置PHPStorm
a) 打开PHPStorm-> Preference -> Languages & Frameworks -> PHP:

Mac+MAMP+PhpStorm+Xdebug+Chrome搭建PHP调试环境_第3张图片
屏幕快照 2018-09-18 下午1.56.11.png

点击CLI Interpreter后面的...:
点击+,添加interpreter路径,随后出现Debugger: Xdebug
Mac+MAMP+PhpStorm+Xdebug+Chrome搭建PHP调试环境_第4张图片

b) 打开PHPStorm-> Preference -> Languages & Frameworks -> PHP -> Debug -> DBGp Proxy

IDE key: PHPSTORM
Host: localhost
Port: 9000


Mac+MAMP+PhpStorm+Xdebug+Chrome搭建PHP调试环境_第5张图片

c) 打开PHPStorm-> Preference -> Languages & Frameworks -> PHP -> Server
点击+添加localhost:
Name: localhost
Host: localhost
Port: 80
Debugger: Xdebug


Mac+MAMP+PhpStorm+Xdebug+Chrome搭建PHP调试环境_第6张图片

d) 打开Run -> Edit Configuration
点击+ 选择PHP Web Page
Server: localhost
Start URL: 填写当前需要访问的页面,例如test.php


Mac+MAMP+PhpStorm+Xdebug+Chrome搭建PHP调试环境_第7张图片

6. 插件
Chrome或者Firefox都有Xdebug插件,这里选择Chrome为例
在Chrome网上应用商店例下载Xdebug Helper或者JetBrains IDE Support
双击点击选项,填写IDE Key为PHPSTORM

Mac+MAMP+PhpStorm+Xdebug+Chrome搭建PHP调试环境_第8张图片

点击Debug:


Mac+MAMP+PhpStorm+Xdebug+Chrome搭建PHP调试环境_第9张图片

回到PHPStorm,点击右上角的电话按钮,打开监听:


然后就可以愉快的加上breakpoints,点击瓢虫按钮开始debug。


Mac+MAMP+PhpStorm+Xdebug+Chrome搭建PHP调试环境_第10张图片

大功告成。

你可能感兴趣的:(Mac+MAMP+PhpStorm+Xdebug+Chrome搭建PHP调试环境)