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

不同的项目中,可能会使用不同的php版本,在使用 composer 安装依赖时,如何指定不同的php版本呢?

比如平时开发时,使用的是 php 7.0版本,但是在按照 Laravel最新版本(5.6) 时就跑不同了。因为在Laravel 5.6中, 最低要求版本是 PHP 7.1.3.

查看默认PHP版本:

本机中默认PHP版本是7.0.30,命令地址是“/usr/local/bin/php”。

$which php

/usr/local/bin/php

$/usr/local/bin/php -v

PHP7.0.30(cli)(built:Jun22201800:52:06)(NTS)Copyright(c)1997-2017ThePHPGroupZendEnginev3.0.0,Copyright(c)1998-2017ZendTechnologieswithZendOPcachev7.0.30,Copyright(c)1999-2017,byZendTechnologies

安装PHP 7.2

在macOS系统中使用brew软件管理工具安装:

$ brew search php72

$ brew install php72

// 将命令路径复制一份到环境变量目录里:

$cp /usr/local/Cellar/php/7.2.7/bin/php      /usr/local/bin/php72

查看php7.2:

$/usr/local/bin/php72    -v

PHP7.2.7(cli)(built:Jun22201806:29:00)(NTS)Copyright(c)1997-2018ThePHPGroupZendEnginev3.2.0,Copyright(c)1998-2018ZendTechnologieswithZendOPcachev7.2.7,Copyright(c)1999-2018,byZendTechnologies

php72 的命令路径是我们上边指定的 “/usr/local/bin/php72”:

$which  php72 

/usr/local/bin/php72

下载 composer.phar 文件

phar类似java中的jar包,是一种压缩包,用来将多个 PHP 文件打包为一个文件。

$ wget   https://getcomposer.org/download/1.6.5/composer.phar

下载好后,直接使用:

比如安装 “laravel/passport” 包:

// 直接使用默认php版本

$ composerrequirelaravel/passport

// 使用指定的php版本(php7.2)

$ php72 composer.pharrequirelaravel/passport

再看一下使用对比:

// 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

你可能感兴趣的:(在多版本php环境,指定composer使用的php版本)