composer用于安装reactphp的php包(如react/event-loop、react/http),而非前端react框架;需php≥7.4及json、mbstring、sockets、posix扩展,通过composer require安装后可直接引入vendor/autoload.php使用。

Composer 本身不安装 ReactPHP 组件,而是用来安装 ReactPHP 的 PHP 包(如 react/http、react/event-loop 等),ReactPHP 是纯 PHP 实现的异步 I/O 库,不是前端 React 框架。安装前需确认你真正需要的是 ReactPHP(服务端异步 PHP)而非 Facebook 的 React(JavaScript 前端库)。
确认环境与前提条件
ReactPHP 要求 PHP ≥ 7.4(推荐 8.0+),且必须启用以下扩展:
-
ext-json(默认启用) -
ext-mbstring(处理多字节字符串) -
ext-sockets(核心网络能力,Windows 上需确保未禁用) -
ext-posix(Linux/macOS 推荐,用于信号处理)
运行 php -v 和 php -m | grep -E "(json|mbstring|sockets|posix)" 验证。若缺失,需在 php.ini 中取消对应 extension= 行的注释,并重启 CLI 环境。
安装 Composer(若尚未安装)
ReactPHP 依赖 Composer 管理,先确保 Composer 可用:
- Windows:下载 Composer-Setup.exe,勾选 “Add to PATH”,安装后新开命令行执行
composer --version - macOS:推荐
brew install composer - Linux:执行
curl -sS https://getcomposer.org/installer | php && sudo mv php.phar /usr/local/bin/composer && sudo chmod +x /usr/local/bin/composer,再确认/usr/local/bin在$PATH中
创建项目并安装 ReactPHP 包
进入空目录,初始化项目并安装所需组件:
- 运行
composer init创建composer.json(可全按回车使用默认值) - 安装核心事件循环:
composer require react/event-loop - 安装 HTTP 服务器:
composer require react/http - 如需 DNS 支持:
composer require react/dns
安装完成后,vendor/ 目录生成,autoload.php 可直接引入使用。例如新建 server.php:
use React\Http\Server;
use React\Http\Message\Response;
use React\EventLoop\Factory;
$loop = Factory::create();
$server = new Server(function ($request) {
return new Response(200, ['Content-Type' => 'text/plain'], "Hello ReactPHP!");
});
$socket = new React\Socket\TcpServer('127.0.0.1:8080', $loop);
$server->listen($socket);
$loop->run();
配置与优化建议
ReactPHP 默认不强制要求特定配置,但为保障稳定性可补充:
- 在
composer.json中添加平台配置,避免版本误判:"config": {"platform": {"php": "8.1.0"}} - 国内用户建议切换阿里云镜像加速:
composer config -g repo.packagist composer https://mirrors.aliyun.com/composer/ - 若运行时报
stream_socket_server(): unable to connect,检查端口是否被占用或防火墙限制
php免费学习视频:立即使用
踏上前端学习之旅,开启通往精通之路!从前端基础到项目实战,循序渐进,一步一个脚印,迈向巅峰!











