class 'redis' not found 错误主因是 php 未安装 redis 扩展,需下载 php_redis.dll、配置 php.ini 并重启服务;若因平台要求不匹配,应优先修复环境而非滥用 --ignore-platform-reqs。

别急着加 --ignore-platform-reqs —— 它不修复环境,只跳过校验;装完就报 Class 'Redis' not found 或 Undefined function str_contains() 的概率极高。
报错 Your platform does not meet the minimum requirements 怎么办
这不是安装失败,是 Composer 在提醒你:本地真实环境(php -v、php -m、ldconfig -p)和 composer.json 里声明的 require 或 config.platform 不匹配。
- 常见触发点:
composer.lock记的是 PHP 8.2,CI 构建机是 8.1;本地没装ext-redis,但依赖包硬 require 它;composer.json里写了"platform": {"php": "8.3.0"},而你本地是 8.2 -
--no-scripts和--no-dev完全不影响这个检查,加了也没用 - 先查清到底是 PHP 版本问题、扩展缺失,还是
config.platform写得过高 —— 找到根因比绕过更省事
为什么 --ignore-platform-reqs 是最危险的“快捷键”
它会跳过全部三类平台校验:PHP 版本、所有扩展(ext-gd、ext-mbstring)、系统库(lib-curl),但不改 composer.lock,也不影响依赖解析策略。
围绕关键发现、作用机制、临床相关性及研究局限性展开讨论。适用于撰写或优化任何生物医学论文的“讨论(Discussion)”部分——包括结果解读、与既往文献关联、阐释意外发现、界定研究局限性,以及撰写结论。当用户输入以下任一指令时也会自动触发该功能: - “write my discussion” - “help me discuss my findings” - “how do I compare to prior studies” - “write the limitations par
-
composer install --ignore-platform-reqs:全部跳过,最粗暴,风险最高 -
composer install --ignore-platform-req=php:只跳 PHP 版本,保留对扩展的检查(推荐) -
composer install --ignore-platform-req=ext-gd --ignore-platform-req=ext-igbinary:可叠加多个,值必须严格匹配(大小写敏感,ext-imagick不能写成imagick) -
--ignore-platform-reqs=true是无效写法,Composer 直接报错
composer create-project 也卡住?参数不能省
create-project 不仅下载模板,还会立刻执行 install,所以同样受平台检查限制。加了 --no-interaction 或 --quiet 也没用 —— 它们不干预平台校验。
- 必须显式传参:
composer create-project laravel/laravel myapp --ignore-platform-reqs - 如果项目
composer.json里有"config": {"platform": {"php": "8.3.0"}},你本地是 8.2,不加参数根本不会开始下载 - CI/CD 中盲目加
--ignore-platform-reqs,等于把兼容性问题拖到运行时暴露,排查成本更高
真正麻烦的不是装不上,而是装上了却崩在运行时
比如你用 --ignore-platform-reqs 强行装了 Laravel Octane,但它强依赖 ext-swoole;装完 php artisan octane:start 仍会报 Class 'Swoole\Http\Server' not found。
- 又比如锁文件里记着一个只支持 PHP 8.2+ 的包,你本地是 8.1,
install成功了,php index.php还是会报Undefined function create_function() -
--ignore-platform-reqs只解决安装阶段,运行时报错仍是真实缺失或语法不兼容,得配好运行时环境 - CI 中若必须使用,应配合
composer validate --no-check-publish先校验依赖合理性,再执行带参数的安装










