在多版本php環境,指定composer使用的php版本

在不一樣的項目中,可能會使用不一樣的php版本,在使用 composer 安裝依賴時,如何指定不一樣的php版本呢?php

好比平時開發時,使用的是 php 7.0版本,可是在按照 Laravel最新版本(5.6) 時就跑不一樣了。由於在Laravel 5.6中, 最低要求版本是 PHP 7.1.3.html

查看默認PHP版本:

本機中默認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

安裝PHP 7.2

在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

下載 composer.phar 文件

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

參考連接:

https://www.cnblogs.com/phpper/p/6795711.html

相關文章
相關標籤/搜索