当前位置:   article > 正文

MacOS 14 搭建 PHP7.4 + Xdebug开发环境_php 7.4 xdebug

php 7.4 xdebug

摘要

项目使用的技术栈:PHP 7.4.33、ThinkPHP 5.1.27、Redis、MySQL
由于MacOS预装的PHP版本较高,所以需要降级
IDE 使用 PhpStorm 2023.2.3

1. 安装PHP 7.4.33

MacOS 14中的brew版本比较高,没有低版本的PHP

brew install shivammathur/php/php@7.4-debug
  • 1

2. 切换版本

#断开链接php8.3版本
brew unlink php@8.3
#链接php7.4版本
brew link php@7.4-debug
  • 1
  • 2
  • 3
  • 4

3. 安装xdebug模块

3.1 确认xdebug版本

将phpinfo()粘贴到xdebug提供的安装向导页面 Installation Wizard
image.png

3.2 安装xdebug

根据上一步中分析的结果,安装对应版本的xdebug
image.png

4. 安装Redis模块

4.1 下载Redis模块的源码包

地址:http://pecl.php.net/package/redis

4.2 安装

解压缩后进入目录
Downloads/redis-5.0.2/redis-5.0.2

liyang@liyangdeMBP redis-5.0.2 % ll
total 3656
drwxr-xr-x@ 56 liyang  staff    1792  4  3 09:48 ./
drwxr-xr-x@  5 liyang  staff     160  4  3 09:42 ../
drwxr-xr-x  14 liyang  staff     448  4  3 09:48 .libs/
-rw-r--r--@  1 liyang  staff    3218  7 29  2019 COPYING
-rw-r--r--@  1 liyang  staff     204  7 29  2019 CREDITS
-rw-r--r--@  1 liyang  staff    3602  7 29  2019 INSTALL.markdown
-rw-r--r--   1 liyang  staff   11894  4  3 09:48 Makefile
-rw-r--r--   1 liyang  staff       0  4  3 09:48 Makefile.fragments
-rw-r--r--   1 liyang  staff    2802  4  3 09:48 Makefile.objects
-rw-r--r--@  1 liyang  staff  119355  7 29  2019 README.markdown
-rw-r--r--@  1 liyang  staff   10019  7 29  2019 arrays.markdown
drwxr-xr-x   7 liyang  staff     224  4  3 09:45 autom4te.cache/
drwxr-xr-x  13 liyang  staff     416  4  3 09:45 build/
-rw-r--r--@  1 liyang  staff   10988  7 29  2019 cluster.markdown
-rw-r--r--@  1 liyang  staff   83920  7 29  2019 cluster_library.c
-rw-r--r--@  1 liyang  staff   18106  7 29  2019 cluster_library.h
-rw-r--r--   1 liyang  staff     321  4  3 09:48 cluster_library.lo
-rw-r--r--@  1 liyang  staff   19955  7 29  2019 common.h
-rw-r--r--   1 liyang  staff    2131  4  3 09:45 config.h
-rw-r--r--   1 liyang  staff    2006  4  3 09:48 config.h.in
-rw-r--r--   1 liyang  staff   18298  4  3 09:48 config.log
-rw-r--r--@  1 liyang  staff    7802  7 29  2019 config.m4
-rwxr-xr-x   1 liyang  staff     139  4  3 09:48 config.nice*
-rwxr-xr-x   1 liyang  staff   21221  4  3 09:48 config.status*
-rw-r--r--@  1 liyang  staff     923  7 29  2019 config.w32
-rwxr-xr-x   1 liyang  staff  475668  4  3 09:45 configure*
-rw-r--r--   1 liyang  staff    5082  4  3 09:45 configure.ac
-rw-r--r--@  1 liyang  staff    4483  7 29  2019 crc16.h
drwxr-xr-x   2 liyang  staff      64  4  3 09:45 include/
drwxr-xr-x@  8 liyang  staff     256  4  3 09:42 liblzf/
-rw-r--r--@  1 liyang  staff   78234  7 29  2019 library.c
-rw-r--r--@  1 liyang  staff    8056  7 29  2019 library.h
-rw-r--r--   1 liyang  staff     305  4  3 09:48 library.lo
-rwxr-xr-x   1 liyang  staff  211007  4  3 09:48 libtool*
drwxr-xr-x   3 liyang  staff      96  4  3 09:48 modules/
-rw-r--r--@  1 liyang  staff    8509  7 29  2019 php_redis.h
-rw-r--r--@  1 liyang  staff  116912  7 29  2019 redis.c
-rw-r--r--   1 liyang  staff     802  4  3 09:48 redis.la
-rw-r--r--   1 liyang  staff     301  4  3 09:48 redis.lo
-rw-r--r--@  1 liyang  staff   40509  7 29  2019 redis_array.c
-rw-r--r--@  1 liyang  staff    2281  7 29  2019 redis_array.h
-rw-r--r--   1 liyang  staff     313  4  3 09:48 redis_array.lo
-rw-r--r--@  1 liyang  staff   40728  7 29  2019 redis_array_impl.c
-rw-r--r--@  1 liyang  staff    1350  7 29  2019 redis_array_impl.h
-rw-r--r--   1 liyang  staff     323  4  3 09:48 redis_array_impl.lo
-rw-r--r--@  1 liyang  staff  106555  7 29  2019 redis_cluster.c
-rw-r--r--@  1 liyang  staff   10438  7 29  2019 redis_cluster.h
-rw-r--r--   1 liyang  staff     317  4  3 09:48 redis_cluster.lo
-rw-r--r--@  1 liyang  staff  130272  7 29  2019 redis_commands.c
-rw-r--r--@  1 liyang  staff   13712  7 29  2019 redis_commands.h
-rw-r--r--   1 liyang  staff     319  4  3 09:48 redis_commands.lo
-rw-r--r--@  1 liyang  staff   35238  7 29  2019 redis_session.c
-rw-r--r--@  1 liyang  staff     511  7 29  2019 redis_session.h
-rw-r--r--   1 liyang  staff     317  4  3 09:48 redis_session.lo
-r-xr-xr-x   1 liyang  staff  127055  4  3 09:45 run-tests.php*
drwxr-xr-x@ 12 liyang  staff     384  4  3 09:42 tests/
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38
  • 39
  • 40
  • 41
  • 42
  • 43
  • 44
  • 45
  • 46
  • 47
  • 48
  • 49
  • 50
  • 51
  • 52
  • 53
  • 54
  • 55
  • 56
  • 57
  • 58

按顺序执行命令

liyang@liyangdeMBP redis-5.0.2 % phpize
liyang@liyangdeMBP redis-5.0.2 % ./configure --with-php-config=/opt/homebrew/Cellar/php@7.4-debug/7.4.33_6/bin/php-config
liyang@liyangdeMBP redis-5.0.2 % make && make install
  • 1
  • 2
  • 3

5. 修改php.ini配置

增加xdebug和Redis扩展

zend_extension = "/opt/homebrew/lib/php/pecl/20190902-debug/xdebug.so"
xdebug.remote_handler="dbgp"
xdebug.client_host=localhost
xdebug.client_port=9001
xdebug.idekey=phpstorm
xdebug.start_with_request=yes
xdebug.mode=debug

extension="/opt/homebrew/lib/php/pecl/20190902-debug/redis.so"
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

6. 配置PhpStorm,使可以debug

6.1 配置PHP解释器

image.png

6.2 配置xdebug端口

端口应该和php.ini中的一致
image.png

6.3 配置DBGp代理

这里的ide键就是php.ini文件中的xdebug.idekey的值
image.png

参考

PECL::Package::redis
mac 安装php扩展(redis为例)
在 macOS 上的多个 PHP 版本之间切换
# Installation Wizard
手把手完成mac下配置phpstorm的xdebug3

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/713691
推荐阅读
相关标签
  

闽ICP备14008679号