我在使用 Laravel 9 时遇到了这个错误,我已经安装了 PHP 8.1.7。
Composer 检测到您的平台存在问题:您的 Composer 依赖项需要 PHP 版本 ">= 8.1.0"。
我发现其他人也问过这个问题,但似乎没有解决方案可行。
我在使用 Laravel 9 时遇到了这个错误,我已经安装了 PHP 8.1.7。
Composer 检测到您的平台存在问题:您的 Composer 依赖项需要 PHP 版本 ">= 8.1.0"。
我发现其他人也问过这个问题,但似乎没有解决方案可行。
提示
在composer.json
文件中添加以下行:
{
"config": {
"platform-check": false
}
}
或者设置版本:
{
"config": {
"platform": {
"php": "7.1.0"
}
}
}
然后运行composer dump-autoload
我有过同样的问题,因为我在命令行中配置了PHP 8.1的版本,而保留了PHP模块的8.0版本。
所以PHP_VERSION_ID给出的是80020,而php -v给出的是8.1.7。
这提醒我重新配置PHP模块为PHP版本8.1:
sudo a2dismod php8.0
sudo a2enmod php8.1
sudo systemctl restart apache2
然后一切都按预期运作。
参考:
sudo a2dismod php8.0
sudo a2enmod php8.1
sudo systemctl restart apache2
使用composer -vvv about
命令检查Composer是否使用正确的PHP版本。
composer -vvv about 2>&1 | grep "PHP"
vendor/composer/platform_check.php
中添加 PHP_BINARY
来检查 composer 正在使用的实际 PHP 二进制路径,如下所示:if (!(PHP_VERSION_ID >= 80100)) {
$issues[] = 'You are running ' . PHP_VERSION . ' located at: ' . PHP_BINARY;
}
a2disconf php8.0-fpm
a2enconf php8.1-fpm
sudo systemctl restart apache2
Your Composer dependencies require a PHP version ">= 8.1.0"
我在将php从8.1降级到v7.4时遇到了同样的问题。我不知怎么搞错了php7.4-fpm模块。然而,当我再次尝试升级我的php v8.1时,composer开始抱怨那个错误。
我只是简单地删除了我的两个php版本,即7.4和8.1,并重新安装了8.1,这解决了我的问题。
要删除,请按照以下步骤进行....
sudo apt-get purge php8.*
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
sudo apt-get install php8.1
最后,
sudo service apache2 restart
在我的情况下一切都很好
location ~ \.php$ {
fastcgi_pass unix:/var/run/php/php8.0-fpm.sock;
}
所以正确的配置是
location ~ \.php$ {
fastcgi_pass unix:/var/run/php/php8.1-fpm.sock;
}
"require": {
"php": "^8.0|^8.1",
"require": {
"php": "^8.0.2",
如果您正在升级 Laravel 版本,并切换到需要 PHP8(8 或 9,记不清了)的版本, 并且您还切换了 PHP 版本, 则需要重新启动。
php artisan serve
php -v
。 - Markus Zellercomposer install
时,这个问题是何时发生的? - Sujith Sandeep