简介

Swoole 是一个使用 C/C++ 编写的基于事件驱动的高性能网络通信引擎,为 PHP 提供了异步、并行、协程等高级特性。本文将详细介绍如何在 Mac 环境下为 PHP 8.1.13 安装 Swoole 扩展。

安装步骤

1. 下载最新源码

首先从 GitHub 上下载 Swoole 最新版本的源码:

1
2
# 下载 v6.0.2 版本
wget https://github.com/swoole/swoole-src/archive/refs/tags/v6.0.2.tar.gz

2. 解压源码

1
2
tar -zxvf v6.0.2.tar.gz
cd swoole-src-6.0.2

3. 编译安装

使用以下命令在 Mac 上编译并安装 Swoole 扩展:

1
2
3
4
5
6
7
8
9
# 配置编译环境 - 注意在 Mac 上使用 arch -x86_64 以确保架构兼容性
arch -x86_64 ./configure \
--with-php-config=/Applications/MAMP/bin/php/php8.1.13/bin/php-config \
--enable-openssl \
--enable-swoole-curl \
--with-openssl-dir=/Applications/MAMP/Library

# 编译并安装
arch -x86_64 make && make install

4. 配置 PHP

查看 PHP 配置文件路径:

1
php --ini

输出结果:

1
2
3
4
Configuration File (php.ini) Path: /Applications/MAMP/bin/php/php8.1.13/conf
Loaded Configuration File: /Applications/MAMP/bin/php/php8.1.13/conf/php.ini
Scan for additional .ini files in: (none)
Additional .ini files parsed: (none)

5. 编辑 php.ini 文件

在 php.ini 文件中添加以下配置以启用 Swoole 扩展:

1
2
extension=swoole.so
swoole.use_shortname=off

6. 验证安装

重启 PHP 服务后,使用以下命令验证 Swoole 扩展是否成功安装:

1
2
3
php -m | grep swoole
# 或者
php --ri swoole

常见问题

  • 如果遇到编译错误,请确保已安装所有必要的依赖库
  • 对于 M1/M2 芯片的 Mac,arch -x86_64 命令至关重要
  • 如果 Swoole 无法加载,检查 php.ini 文件路径是否正确

参考资料