P粉6708387352023-08-23 22:07:58
如果你正在使用PHP版本8,一些尚未支援的外掛程式可能會導致安裝錯誤。
composer install --ignore-platform-req=php
或 composer install --ignore-platform-reqs
這個選項可以用來設定composer可以忽略的特定要求。
P粉2897750432023-08-23 09:22:20
除了他們所需的其他軟體包的版本外,Composer軟體包還可以指定它們支援的PHP版本。
在解析要安裝的軟體包的版本時,Composer必須找到與所有約束條件相符的版本:
composer.json
中為依賴項指定的版本約束條件如果沒有滿足所有這些約束條件的軟體包,您將收到一個錯誤。
請注意,PHP版本的版本約束條件遵循與其他Composer約束條件相同的規則。因此,^7.0
的約束條件表示“7.0以上的任何7.x版本”,不包括8.0。
要解決這個問題,您需要放寬其中一個限制條件:
acme/some-package
)並在Packagist(或您配置的任何自訂軟體套件來源)上找到它。 composer.json
和其他依賴的軟體包不排除該新版本。例如,如果您目前依賴acme/some-package
的版本^1.0
,但PHP 8.0僅從版本2.2.0開始支持,您需要將約束條件變更為^2.2
,並確保您的應用程式仍然相容。 有時,您非常確定您的應用程式在使用與之前相同的軟體包版本時能夠正常運作。在這種情況下,您可以在composer.json
中使用platform
設定變數來假裝您仍在使用舊版本。 這只應作為臨時解決方法或用於測試,因為這意味著可能會安裝在您的新PHP版本上完全無法使用的軟體包。
例如:
{ "config": { "platform": { "php": "7.4.999" } } }
另請參閱「在Composer中覆寫PHP基本相依性」