在不一樣的項目中,可能會使用不一樣的php版本,在使用 composer 安裝依賴時,如何指定不一樣的php版本呢?php
好比平時開發時,使用的是 php 7.0版本,可是在按照 Laravel最新版本(5.6) 時就跑不一樣了。由於在Laravel 5.6中, 最低要求版本是 PHP 7.1.3.html
本機中默認PHP版本是7.0.30,命令地址是「/usr/local/bin/php」。java
$ which php /usr/local/bin/php $ /usr/local/bin/php -v PHP 7.0.30 (cli) (built: Jun 22 2018 00:52:06) ( NTS ) Copyright (c) 1997-2017 The PHP Group Zend Engine v3.0.0, Copyright (c) 1998-2017 Zend Technologies with Zend OPcache v7.0.30, Copyright (c) 1999-2017, by Zend Technologies
在macOS系統中使用brew軟件管理工具安裝:laravel
$ brew search php72 $ brew install php72 // 將命令路徑複製一份到環境變量目錄裏: $ cp /usr/local/Cellar/php/7.2.7/bin/php /usr/local/bin/php72
查看php7.2:php7
$ /usr/local/bin/php72 -v PHP 7.2.7 (cli) (built: Jun 22 2018 06:29:00) ( NTS ) Copyright (c) 1997-2018 The PHP Group Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies with Zend OPcache v7.2.7, Copyright (c) 1999-2018, by Zend Technologies
php72 的命令路徑是咱們上邊指定的 「/usr/local/bin/php72」:composer
$ which php72 /usr/local/bin/php72
phar相似java中的jar包,是一種壓縮包,用來將多個 PHP 文件打包爲一個文件。工具
$ wget https://getcomposer.org/download/1.6.5/composer.phar
下載好後,直接使用:ui
好比安裝 「laravel/passport」 包:命令行
// 直接使用默認php版本 $ composer require laravel/passport // 使用指定的php版本(php7.2) $ php72 composer.phar require laravel/passport
再看一下使用對比:3d
// php7.2全路徑: // 使用默認php版本: $ composer update // 使用指定php7.2版本: $ /usr/local/bin/php72 composer.phar update // 使用默認php版本: $ composer install // 使用指定php7.2版本: $ php72 composer.phar install
在使用 php artisan 命令行時,也要使用 php72:
$ php72 artisan