可参考 Mac HomeBrew 自 18-03-31 起弃用 homebrew/php 后安装 Xdebug 方法 这篇博文
在 HomeBrew 中,扩展都不再可以直接通过 brew install php71-XXX
的形式安装
而 PHP 还可以,名称发生变更 php56 => [email protected]; php71 => [email protected]
,大致就是这样
好在还可以用 pecl
命令,这玩意儿和 brew
类似,不过需要稍微手动操作一下:
戳开终端,输入
pecl
回车,可以看到基本的命令如前文说的安装
Xdebug
,只需要执行pecl install xdebug
就行,同理需要安装imagick
、redis
等扩展都可以直接运行:pecl install imagick pecl install redis
如果输入命令后提示
No releases available for package
,可以用pecl search 搜索内容
先查找一下包是否存在,然后下方会提示你相关包的名称,再pecl install 包名
就行了。有时候会遇到安装失败,仔细查看最后几行的错误提示,一般情况下是因为相应的包没有安装导致,例如安装
Imagick
就需要imagemagick
这个库,可以通过brew install imagemagick
安装。安装后的
.so
文件会在终端中提示:也就是
/usr/local/Cellar/[email protected]/7.1.17/pecl/20160303/
【具体路径以自己当前使用的 PHP 版本运行pecl
命令后的结果为准】在上方链接中的另一篇博文说过了,因为 PHP 的更新,这个路径可能发生变化,所以我建议换一个位置存放这些文件,
/usr/local/lib/php
这个路径就不错,我们可以在这个目录内新建ext
目录(任意取名,ext
或extensions
都行)。然后将
/usr/local/Cellar/[email protected]/7.1.17/pecl/20160303/
目录内的所有.so
文件复制(建议复制,不是剪切移动,考虑到更新问题)到/usr/local/lib/php/ext
目录最后就是进入
/usr/local/etc/php/版本号/conf.d
目录,新建配置文件就行了,为了方便,我们可以只建立一个exts.ini
文件就行了:[Xdebug] zend_extension="/usr/local/lib/php/extensions/xdebug.so" xdebug.var_display_max_children=512 xdebug.var_display_max_data=2048 xdebug.var_display_max_depth=8 [Redis] extension="/usr/local/lib/php/extensions/redis.so" [Imagick] extension="/usr/local/lib/php/extensions/imagick.so" [Igbinary] extension="/usr/local/lib/php/extensions/igbinary.so" session.serialize_handler=igbinary igbinary.compact_strings=On
没其他操作了,重启一下 PHP 生效
brew services restart php71