全部平台在 http://pecl.php.net 下载扩展。
<br>
___
<br>
## Windows
在pecl官网搜索下载**DLL**扩展安装,放到php的ext目录,然后编辑php.ini开启扩展。
<br>
___
<br>
## Mac
Mac需要编译安装扩展。
#### (1)下载扩展
先在[pecl.php.net]()搜索你需要的扩展并下载
如果扩展详细页提示“This package is not maintained anymore and has been superseded”,例如"pdo_pgsql"
或者压根没有搜到这个扩展,例如"pcntl"
那么这个扩展应该在在php源码里,此时你需要下载对应php版本的源码,扩展目录在 **php源码目录/ext**
#### (2) 编译安装:
如果是 intel 芯片的Mac,直接常规编译安装。
如果是M1、M2等Apple芯片的Arm64 Mac,需要编译之前让终端处于 -x86_64 环境
`arch -x86_64 zsh` (仅Apple Mac)
如果扩展依赖第三方库,那么还需要安装 x86_64 的 Homebrew
`/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"` (仅Apple Mac)
用作安装 x86_64 的库。
`/usr/local/homebrew/bin/brew install 类库`(仅Apple Mac)
然后需要导出如下变量(仅Apple Mac)
```
export CFLAGS=-I/usr/local/homebrew/include
export CPPFLAGS=-I/usr/local/homebrew/include
export LDFLAGS=-L/usr/local/homebrew/lib
```
___
最终不同芯片的Mac通用执行的命令是
```
cd php源码的扩展目录或下载的扩展目录(如/Users/你的账户/Downloads/php-7.4.33/ext/pcntl)
绝对路径/php-x.x/bin/phpize (如/Applications/EServer/software/php/php-7.4/bin/phpize)
./configure --with-php-config=绝对路径/php-x.x/bin/php-config (可以后面接其他 --with)
make && make install
```
然后查看xxx.so扩展文件是否安装(复制)到php的ext目录,如果没有,需要手动复制。
然后编辑php.ini开启扩展。