【发布时间】:2023-01-29 23:15:35
【问题描述】:
我已经在 Windows 10 上安装了 php 7.4 和 php 8.1 在不同的文件夹 PHP7 和 PHP8 中。我已将 C:/PHP7 放入 PATH(环境变量)中,现在当我在终端(CMD、PowerShell 和 Git Bash)中键入 php 时,正在运行 php7。
对于 php8 我做了一个自定义命令php8通过创建一个php8.cmd具有以下简单内容的文件:
"C:/PHP8/php.exe" %*
我已经把文件所在的文件夹放在PATH中了。
都好。现在,当我在命令行中键入 php8 或 PowerShell 正在运行 php 8 时。但是如果我在 Git Bash 中键入 php8,它会显示 bash: php8: command not found
不知何故,Windows 版 Git Bash 看不到新的自定义命令。我不确定是否需要单独制作.sh在其中放置等效内容的文件php8.cmd文件或者如果只是配置 Git Bash 以查看php8.cmd文件。
我也不知道 shell 脚本中的 "C:/PHP8/php.exe" %* 是什么。
有人能帮忙吗?
我这样做是因为我有一个基于 Laravel8 的应用程序(使用 php 7.4)并且我想在 Laravel 9(需要 php 8)上切换它。所以我想启动一个单独的文件夹,在其中使用 Laravel 9 测试应用程序(以查看我需要对代码库进行哪些更改或哪些依赖项需要升级)。在我的 PhpStorm 中,我使用 Git Bash 作为集成终端,这就是为什么我希望自定义命令 php8 也能在 Git Bash 中工作。
非常感谢!
【问题讨论】:
-
这回答了你的问题了吗? Git Bash doesn't see my PATH
-
我通过在 .bash_profile 文件中放置一个类似 php8=/path/to/php8 可执行文件的别名命令来使其工作。现在我可以使用 PHP 8 运行 php8 artisan 命令。composer update(使用默认的 PHP 7)仍然有问题,但我使用 --ignore-platform-reqs 标志运行命令,现在我的应用程序在 Laravel 9 上运行
-
太棒了,你找到了解决方案!我将此添加为答案,以便其他人可以从您的解决方案中受益。 :)