前提
1.替换php源代码
MAMP里面PHP源码是残缺的,所以需要自己下载PHP源码编译,因为php5.6和7.0都会用到,所以特将这两个版本的源码下载
php-5.6.链接: http://cn2.php.net/get/php-5.6.34.tar.gz/from/this/mirror
php-7.0链接: http://cn2.php.net/get/php-7.0.28.tar.gz/from/this/mirror
进入php安装目录,并将原php重命名(以php7.0.27为例)
☁ ~ cd /Applications/MAMP/bin/php/php7.0.27/include
☁ include mv php php.old
将下载的对应 php 压缩包解压并重命名php到此目录下,然后编译安装
☁ include mv php-7.0.28 php
☁ include cd php
☁ php ./configure
2.因为是mac环境,执行执行brew安装autoconf
☁ ~ brew install autoconf
1.安装redis扩展
进入php目录,以php7.0.27为例
☁ ~ cd /Applications/MAMP/bin/php/php7.0.27/include/php
在当前目录下载phpredis
☁ php git clone https://github.com/nicolasff/phpredis.git
执行phpize
命令,生成.configure
可执行文件
☁ php cd phpredis
☁ phpredis phpize
编译安装
☁ phpredis ./configure --with-php-config=/Applications/MAMP/bin/php/php7.0.27/bin/php-config
☁ phpredis make
这时phpredis/modules下会生成redis.so,把它复制到对应扩展目录下
复制redis.so到扩展目录
☁ phpredis sudo cp -p modules/redis.so /Applications/MAMP/bin/php/php7.0.27/lib/php/extensions/no-debug-non-zts-20151012/
然后把redis拓展加到php.ini里
extension=redis.so
image.png
image.png
最后安装redis(上面只是编译redis.so)
☁ ~ brew install redis
2.安装swoole扩展
进入php目录,以php7.0.27为例
☁ ~ cd /Applications/MAMP/bin/php/php7.0.27/include/php
在当前目录下载swoole-src
☁ php git clone https://github.com/swoole/swoole-src.git
执行phpize
命令,生成.configure
可执行文件
☁ php cd swoole-src
☁ swoole-src git checkout 1.9 //如果是php5.6需切换分支
☁ swoole-src phpize
然后执行下面的命令
☁ swoole-src ./configure --with-php-config=/Applications/MAMP/bin/php/php7.0.27/bin/php-config
执行成功后就可以编译安装了
☁ swoole-src make && make install
然后把swoole拓展加到php.ini里
extension=swoole.so
image.png
image.png
如果
php -m
没有看到扩展也没关系,因为cli和fpm用的php.ini可能是两个文件,find /Applications/MAMP/bin/php -name php.ini
查找ini
位置添加扩展即可