markdown
### 前言
一般來說,開發人員的機器總是會安裝最新版本的 PHP 來開發
但是總是會有久遠要維護的專案,而 PHP 版本可能也是久遠的舊版本
如果想透過 Composer 來管理套件,但又想要限制特定支援的安裝版本套件,那該怎麼辦呢?
### 問題
開發環境用 PHP 7.3,維護專案採用 PHP 5.6.1
在不變更開發環境的 PHP 版本之下,專案更新套件時會下載到最新的版本
### 解決方法
在 Composer 有個方便的設定
`composer.json`
只要在 config 加上 platform 的 php 版本即可
```json
...
"config": {
"platform": {
"php": "5.6.1"
}
},
...
```
也可用指令方式來下命令達到一樣的效果
```
composer config platform.php 5.6.1
```
### 更新 composer
修改 composer.json 後執行更新,即會做降版動作
```
$ composer update
```
### References
- [Enforcing a PHP Version for Installed Composer Packages](https://andy-carter.com/blog/composer-php-platform)
沒有留言:
張貼留言