如何在运行composer时切换php版本?
问题出现的原因是在运行composer时,可能会遇到依赖于特定php版本的情况。解决方法是使用--ignore-platform-reqs
参数来忽略php版本依赖。
例如,可以使用以下命令来安装symfony/css-selector包并忽略php版本要求:composer require symfony/css-selector --ignore-platform-reqs
。
通过这种方式,不需要编辑环境变量(在Windows操作系统下)或使用php的完整路径。这在我使用来自GitHub的不同php库时非常有用,这些库需要在我的Windows环境变量中设置不同的php版本,尽管我在WAMP服务器上安装了所有的php版本,因此在安装后运行这些库将不会有任何问题。
当在运行composer时如何切换php版本
如果你的系统中安装了多个php版本,你可以使用不同的版本运行composer。
在Linux中:
对于PHP:
usr/local/php usr/bin/composer install
对于PHP 7.1:
usr/local/php7.1 /usr/local/composer install
实际上,思路是选择你想要运行的版本,获取其二进制路径,然后运行composer。
在Windows中:
path/to/php.exe composer install
希望对你有所帮助。
.levaral:你能告诉我如何使用路径吗?我使用的是
"C:\Program Files\DevDesktop\php7_0\php.exe" composer create-project markaspot/mark-a-spot project-dir --stability dev
,它报错说
Could not open input file: composer
。
给它一个composer.exe的路径。
.levaral:怎么做?
重新安装composer,并在安装时给出php7的路径。
.levaral:我应该卸载先前在php 5.6文件夹中安装的composer吗?或者重复安装composer可以吗?
接受你的答案,但我想要求/建议你让你的答案易于理解。
这个指南很有启发,但我在stackoverflow上提供了一个相当详细的答案(stackoverflow.com/a/72476865/7880201)。试试看。
太棒了。问题解决了。我现在有一个composer8的别名。