macOS系统MAMP、PhpStorm配置PHP的Xdebug环境

众所周知,在PHP下开发,需要调试的时候并没有Java、Go等语言来得方便,需要自己做一番配置才行

下面是系统版本和软件版本,最好是与我的版本一致,其他版本的可以参考

系统:macOS 10.14.5(理论上这个往后到10.15.5都没有问题,因为我的另一台电脑目前是macOS10.15.5,而且一直升级上来都没有问题)

Mamp:5.4

PhpStorm:2019.2

PHP:7.3.7

首先当然是先安装好软件

首先配置Mamp

  1. 添加一个网站

7wiy6CJnDDClZCVbHhu3e9ptx99zzmZOam7YWtn2.png

  1. 先到这里把Xdebug给钩上

eEoR7vCbdlwYxsfkeGYeleKYNz3lVdZTsj4fdsOr.png

  1. 接下来来到这里打开php.ini文件,安装自己安装的php版本选择,我这里选择7.3.7

K0O52ppcXKSxaw68F3c7UXTzEbmH3AF0LPYTSCYo.png

  1. 在打开的php.ini文件中找到[xdebug]这一行,默认是这样的

U5mIuhyFoNoQFIraDovv8hBQ53q2ZHST6isoyUdb.png

然后修改添加成下面的内容:

MAMP_Xdebug_MAMPzend_extension="/Applications/MAMP/bin/php/php7.3.7/lib/php/extensions/no-debug-non-zts-20180731/xdebug.so"
 xdebug.remote_enable =1
 xdebug.remote_handler = dbgp
 xdebug.remote_host = 127.0.0.1
 xdebug.remote_mode = req
 xdebug.remote_port = 9001
 xdebug.idekey = PHPSTORM
 xdebug.remote_autostart = 1

 xdebug.profiler_enable = off
 xdebug.profiler_enable_trigger = Off
 xdebug.profiler_output_name = cachegrind.out.%t.%p
 xdebug.profiler_output_dir ="/Applications/MAMP/tmp"
 xdebug.show_local_vars=0

修改完后是这样的

44pRcgqWDAYF1YwF8APtkvJJlc3K0IS3UqLQjRUS.png

然后保存退出

PS:由于Mamp有点坑,php.ini文件有两份,为了避免不必要的情况,我们把另一份也给修改成上上面的内容

nfnNSW83juXvk9TuXwlWCtJYg0a2eUck19EVjv8c.png

然后打开php.ini按照上面的步骤修改一次,保存,最后去把Mamp重启一次

然后配置PhpStorm

  1. 打开Preferences,找到这一栏

APlpsaReD3Boy5cyTk5i3geJJjrK8DPyblsvUi0C.png

在3和4那里选择对于的php版本

PS:这里有两个小问题

问题1、可能有的人3不能选择,可以到按照下面的图操作,再回来即可选择

ChG2l38nEmqfDY5d6e2N9FXrOrvWYT1zHivA0pvl.png

问题2、可能有人4这里没有,可以按照下面的操作

7FX6BT8M7R5HH4VJvbAlcTeUYcA4vptgGqokyTGu.png

3nGtZ6i0bUgOuwU80RiUwOYrAyj24So23OWsIVuK.png

  1. 修改Debug端口

RYWinACheCDG0D0j9juDs9qX99gpqPebHRufkkFW.png

  1. 配置DBGp Proxy

SfTuSpM7u9eCfb1OkxjAMCFdKYdix347JNZZGUmW.png

  1. 配置Servers

OMugUv3DagdC4Ank0WmL5nNjTdBtVlTHYks6hdCI.png

  1. 配置Debug Configurations

HIcinFCOmA0iWr1t2ZMSh3M3O0qBSe3ENvyHNnpS.png

29zAMLjq3A3fgJhNARx7rG4rrVrSplbsis4gWPU6.png

lw66ycZcqhnCVR74w9X9MWfQDW1TljGi9wIwke4v.png

  1. 重启PhpStorm

  2. 先开启图一(如果变绿色即可),然后在入口文件打个断点,然后在浏览器访问,如果能够停留在断点处即代表成功

FRqZSm6m0cPzGv4o8zxy3r1nOTujxixz7ikxzR5Z.png

YaGacoUnheepgJnWVahIqGXataLC9UOYAzVAONsF.png

RhxfwsxvwrMkPHE5gVlppfPobSk442s2iet57wHk.png

成功!

PS:如果同时打开两个项目(即两个PhpStorm)调试某个项目的时候,会弹出一个框让你选择,每次都会弹出来,有点烦,所有你可以到另一个暂时不用调试的项目把这里取消即可,需要的时候再打开即可

fiNWsourOmMIGonKW7vKKFiXudux94qLKZIF9eOd.png

©著作权归作者所有,转载或内容合作请联系作者