【问题标题】:How to switch PHP versions in environment variables?如何在环境变量中切换 PHP 版本?
【发布时间】:2017-09-29 07:36:12
【问题描述】:

由于我需要在 Yii 框架中同时处理 PHP5.x 和 PHP7.x 项目,我已经安装了 WAMP。

我还设置了我的环境变量以链接到包含 php.exe 的两个路径,并且仅用于处理项目,这很好。

但是,每当我需要运行迁移时,都会出现一个问题:如果先定义 PHP7 路径,则无法运行 PHP5 迁移;如果先列出 PHP5 路径,则无法再运行 PHP7 迁移。

PHP5 的错误信息:

'yii' 不是内部或外部命令、可运行程序或批处理文件。

PHP7 的错误信息:

解析错误:语法错误,意外的“?”在 C:\wamp64\www\project\vendor\phpunit\phpunit\src\Framework\TestCase.php 第 822 行

有没有一种简洁的方法可以在运行迁移时定义您希望使用的 PHP 版本,而无需一次又一次地重新配置您的环境变量?

【问题讨论】:

  • 如您所见,使用 WAMPServer 将 PHP 放在 PATH 上是一个非常糟糕的主意。相反,制作一个批处理文件以将所需的文件夹添加到路径中,这将仅适用于命令窗口生命周期like in this answer

标签: yii environment-variables wamp yii-migrations


【解决方案1】:

感谢@RiggsFolly 的帮助。根据您提供的链接,我编译了一个方便的解决方案:

我首先在 C:\Windows\System32 中创建了 2 个新文件(因为此路径已包含在环境变量中):

startphp5.cmd 和 startphp7.cmd。

startphp5.cmd 只包含这个(start7.php 显然几乎相同):

PATH=%PATH%;C:\wamp64\bin\php\php5.6.31
php -v

在命令提示符中运行迁移之前,我现在要做的就是运行“startphp5”或“startphp7”。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-04-27
    • 1970-01-01
    • 2019-12-12
    • 2015-05-31
    • 1970-01-01
    • 2013-08-25
    • 1970-01-01
    相关资源
    最近更新 更多