# swoole-cli **Repository Path**: jory/swoole-cli ## Basic Information - **Project Name**: swoole-cli - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-01-24 - **Last Updated**: 2026-01-24 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # swoole-cli `Swoole-Cli` 是一个 `PHP`的二进制发行版,
集成了 `swoole`、`php 内核`、`php-cli`、`php-fpm`以及多个常用扩展。
`Swoole-Cli`是全部静态编译打包的,不依赖任何操作系统的`so` 动态链接库,具备非常好的移植性,
可以在任意 `Linux`/`macOS`/`Windows(CygWin)`系统之间复制,下载即可使用。 > 作为 PHP 开发者都应该知道 PHP 有两种运行模式:php-fpm和php-cli,
> 那么在 Swoole 5.0 中将迎来一种新的运行模式:swoole-cli。
> > Swoole将像node.js这样作为独立程序提供给用户,而不是作为PHP的一个扩展。 >
> 除此之外swoole-cli会尽可能地对php-src进行裁剪,
> 移除一些不用的机制、模块、扩展、函数、类型、常量、代码,使得整个程序可以在几分钟之内编译完成。 ## 相关文章 - [Swoole-Cli 介绍、使用说明](https://wenda.swoole.com/detail/108876) - [Swoole-Cli v6.1 将允许对 array/string/stream 类型使用内置方法](https://mp.weixin.qq.com/s/RmdKC5TLREwjcJFc-upZLQ) - [Swoole-Cli v5.0.2 增加 opcache/readline 扩展,强化 Cli-Server](https://wenda.swoole.com/detail/108931) - [Swoole-Cli v5.0.1 使用说明](https://wenda.swoole.com/detail/108876) - [Swoole-Cli v5.0.0 版本新特性预览之新的运行模式](https://wenda.swoole.com/detail/108706) - [Swoole-Cli 已提供 Windows 平台 (cygwin64)支持](https://wenda.swoole.com/detail/108743) - [Swoole v6.1 将提供 typed array 强类型数组实现,增强 PHP 标准库](https://mp.weixin.qq.com/s/yFuxYdNMqxI1VuZg0J07Wg) - [Swoole v6 2024 重磅更新:Swoole v6 正式发布,增加 16 项新功能](https://mp.weixin.qq.com/s/Ks1x1LNTLdl5jk0sIS6V_w) - [Swoole v6 协程是否支持 PHP 的 JIT ](https://mp.weixin.qq.com/s/Tm-6XVGQSlz0vDENLB3ylA) - [Swoole v6 Alpha 版本已发布,为 PHP 带来稳定可靠、生产可用的多线程方案](https://mp.weixin.qq.com/s/IeCGVRFQDVbzVWCIZRGFNg) - [Swoole v6 将引入 Linux io_uring ,并发读写文件性能提升了 5 倍](https://mp.weixin.qq.com/s/5qnqmjCEb_zxLaT4sR1HAg) - [Swoole v6 线程池的使用](https://mp.weixin.qq.com/s/wzdH7voOWcHCLuf16SLeIA) - [Swoole v6 PHP 多线程实现原理 深度剖析](https://mp.weixin.qq.com/s/HzPEg7g3PuN2Xky4EQfnHw) - [Swoole v6 要来了!即将增加多线程支持](https://segmentfault.com/a/1190000044737434) - [Swoole v6 开发计划 - 支持多线程运行模式](https://github.com/swoole/rfc/issues/85) - [Swoole v5.1 增加更多数据库协程客户端支持](https://wenda.swoole.com/detail/109023) - [phpy 2025 支持了更多高级语法](https://mp.weixin.qq.com/s/YCG5ENAVOKzxcdD1Qdepbg) - [phpy 1.0.8 已发布,现在 PHP 类可以继承 Python 类了](https://mp.weixin.qq.com/s/mosUpNpm-iY2-vlGZQMlsA) - [phpy 中如何调用自定义 Python 模块](https://mp.weixin.qq.com/s/KOV-XZQVqZSXkMQoiDrsMA) - [phpy 连接 PHP 与 Python 互调用库,为 PHP 引入 Python 生态,PHP 也可以写 AI 了](https://wenda.swoole.com/detail/109176) ### 相关文章 知乎 - [Swoole-Cli v5.0.1 PHP 的二进制发行版](https://zhuanlan.zhihu.com/p/581695339) - [Swoole-Cli v5.0.2 增加 opcache/readline 扩展,强化 Cli-Server](https://zhuanlan.zhihu.com/p/610014616) - [Swoole v6 即将增加多线程支持](https://zhuanlan.zhihu.com/p/688462525) - [phpy:连接 PHP 与 Python 互调用库,为 PHP 引入 Python 生态,PHP 也可以写 AI 了](https://zhuanlan.zhihu.com/p/670373512) ## [常见问题解答](https://github.com/swoole/swoole-cli/blob/main/docs/FAQ.md) ## 下载`swoole-cli`发行版 - [https://www.swoole.com/download](https://www.swoole.com/download) (recommend) - [https://github.com/swoole/swoole-cli/releases](https://github.com/swoole/swoole-cli/releases) - [https://github.com/swoole/swoole-src/releases](https://github.com/swoole/swoole-src/releases) ## 立即使用 swoole-cli ```shell curl -fSL https://github.com/swoole/swoole-cli/blob/main/setup-swoole-cli-runtime.sh?raw=true | bash # windows powershell irm https://github.com/swoole/swoole-cli/blob/main/setup-swoole-cli-runtime.ps1?raw=true | iex # 来自 https://www.swoole.com/download curl -fSL https://github.com/swoole/swoole-cli/blob/main/setup-swoole-cli-runtime.sh?raw=true | bash -s -- --mirror china # 指定发布版本 curl -fSL https://github.com/swoole/swoole-cli/blob/main/setup-swoole-cli-runtime.sh?raw=true | bash -s -- --version v5.1.6.0 ``` ## `swoole-cli`构建文档 - [linux 版构建文档](docs/linux.md) - [macOS 版构建文档](docs/macOS.md) - [windows Cygwin 版构建文档](docs/Cygwin.md) - [windows WSL 版构建文档](docs/wsl.md) - [swoole-cli 构建选项文档](docs/options.md) - [打包成二进制可执行文件 文档](sapi/samples/sfx/README.md) - [swoole-cli 搭建依赖库镜像服务](sapi/download-box/README.md) - [快速初始化构建环境](sapi/quickstart/README.md) ## Clone ```shell git clone --recursive https://github.com/swoole/swoole-cli.git ``` ```shell git clone https://github.com/swoole/swoole-cli.git git submodule update --init ``` ## 快速准备 PHP 运行时 ```shell cd swoole-cli bash setup-php-runtime.sh # 来自 https://www.swoole.com/download bash setup-php-runtime.sh --mirror china # 使用swoole-cli # shell脚本中启用别名扩展功能‌ shopt -s expand_aliases __DIR__=$(pwd) export PATH="${__DIR__}/runtime/php/:$PATH" alias php="php -d curl.cainfo=${__DIR__}/runtime/php/cacert.pem -d openssl.cafile=${__DIR__}/runtime/php/cacert.pem" which php php -v ``` ## 生成构建脚本 ```shell composer install php prepare.php php prepare.php +inotify +mongodb -mysqli ``` * 脚本会自动下载相关的`C/C++`库以及`PECL`扩展 * 可使用`+{ext}`或者`-{ext}`增减扩展 ## 进入 Docker Bash ```shell ./make.sh docker-bash ``` > 需要将 `swoole-cli` 的目录映射到容器的 `/work` 目录 ## 构建 `C/C++` 依赖库 ```shell ./make.sh all-library ``` ## 编译配置 ```shell ./make.sh config ``` ## 构建 swoole-cli ```shell ./make.sh build ``` > 编译成功后会生成`bin/swoole-cli` ## 打包 ```shell ./make.sh archive ``` > 打包成功后会生成 `swoole-cli-{version}-{os}-{arch}.tar.xz` > 压缩包,包含 `swoole-cli` 可执行文件、`LICENSE` 授权协议文件。 ## 授权协议 * `swoole-cli` 使用了多个其他开源项目,请认真阅读自动生成的 `bin/LICENSE` 文件中版权协议,遵守对应开源项目的 `LICENSE` * `swoole-cli` 本身的软件源代码、文档等内容以 `Apache 2.0 LICENSE`+`SWOOLE-CLI LICENSE` 作为双重授权协议,用户需要同时遵守 `Apache 2.0 LICENSE`和`SWOOLE-CLI LICENSE` 所规定的条款 ## SWOOLE-CLI LICENSE * 对 `swoole-cli` 代码进行使用、修改、发布的新项目必须含有 `SWOOLE-CLI LICENSE` 的全部内容 * 使用 `swoole-cli` 代码重新发布为新项目或者产品时,项目或产品名称不得包含 `swoole` 单词