摘要
项目使用的技术栈: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
2. 切换版本
#断开链接php8.3版本
brew unlink php@8.3
#链接php7.4版本
brew link php@7.4-debug
3. 安装xdebug模块
3.1 确认xdebug版本
将phpinfo()粘贴到xdebug提供的安装向导页面 Installation Wizard
3.2 安装xdebug
根据上一步中分析的结果,安装对应版本的xdebug
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/
按顺序执行命令
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
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"
6. 配置PhpStorm,使可以debug
6.1 配置PHP解释器
6.2 配置xdebug端口
端口应该和php.ini中的一致
6.3 配置DBGp代理
这里的ide键就是php.ini文件中的xdebug.idekey的值
参考
PECL::Package::redis
mac 安装php扩展(redis为例)
在 macOS 上的多个 PHP 版本之间切换
# Installation Wizard
手把手完成mac下配置phpstorm的xdebug3
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
相关推荐: 计算机网络面经八股-HTTP1.0和HTTP1.1的区别?
长连接:HTTP 1.1支持长连接(Persistent Connection)和请求的流水线(Pipelining)处理,在一个TCP连接上可以传送多个HTTP请求和响应,服务器托管网减少了建立和关闭连接的消耗和延迟,在HTTP1.1中默认开启Connect…