在MAMP环境下安装PHP扩展时,需要注意,由于MAMP的php的源码并不完整,不方便扩展安装,所以需要重新编译对应版本你的php源码,才能继续安装扩展。
不信的话可以试试在MAMP原先的php里安装xhprof,八成会报错php.h not found
:)
最近项目需求需要对API性能进行分析,需要用到php的xhprof扩展。过程如下:
注:由于php7版本比较新,我所用的php7.0.8不支持xhprof扩展,而FaceBook也停止了xhprof的维护更新。所以我选择重新编译php5.6.10。
- 编译安装php5.6.10
cd /Applications/MAMP/bin/php/php5.6.10
mkdir include
wget http://hk1.php.net/get/php-5.6.10.tar.gz/from/this/mirror
tar -zxf php5.6.10 #如果下载下来是个名为mirror的文件,则解压mirror文件即可
mv php5.6.10 php
cd php
./configure
- 编译安装xhprof扩展
cd ~
wget http://pecl.php.net/get/xhprof-0.9.3.tgz
tar -zxf xhprof-0.9.3.tgz
cd ./xhprof-0.9.3/extension/
phpize
./configure --with-php-config=/Applications/MAMP/bin/php/php5.6.10/bin/php-config
此处的php-config的路径可以通过which php来查看,如果没有找到的或者路径不是你想要的php版本的路径,可以通过修改~/.bash_profile来修改,例如:
PATH="/Applications/MAMP/bin/php/php5.6.10/bin:$PATH"
export PATH
记得把扩展写到php.ini里:打开MAMP窗口的edit----edit template----php----php5.6.10.ini
extension=xhprof.so
- 重启apache即可