如何正确设置 PHP 环境变量以在 Git Bash 中运行命令

Posted

技术标签:

【中文标题】如何正确设置 PHP 环境变量以在 Git Bash 中运行命令【英文标题】:How to properly set PHP environment variable to run commands in Git Bash 【发布时间】:2013-07-17 15:18:51 【问题描述】:

整个网站上都有一些类似的问题,但没有一个给出我正在寻找的答案。

我正在尝试通过 Git Bash 在具有 WAMP 的 Windows 机器上安装 Composer。我正在使用以下命令:

curl -s http://getcomposer.org/installer | php

这不起作用,因为无法识别“php”。所以我研究了这个问题,我意识到Windows不知道'php'是什么,我需要设置一个环境变量。

我进入环境变量对话框并输入 'php' 作为变量,C:\wamp\bin\php\php5.3.8 作为值。它是否正确?我应该针对特定文件还是整个目录?

执行此操作后,我再次尝试该命令,但由于它仍然无法识别“php”而失败。我也试过将文件路径直接放入命令中,但也没有用。

所以我很好奇我做错了什么。我的路径不正确吗?

【问题讨论】:

您到底为什么要使用 PHP 5.3.8 进行新开发?如果你还需要 PHP 5,至少运行 5.6。 这个问题有 3 年历史了... 5.6 不存在。 糟糕!够公平的! 【参考方案1】:

将路径添加到 PATH 变量应该可以解决这个问题。

右击我的电脑,进入高级设置,点击环境变量,然后编辑PATH系统变量。

添加分号,然后添加 PHP 二进制文件的路径,即“;C:\wamp\bin\php\php5.3.8”

最后,重启 Git Bash 以更新 PATH 变量。

【讨论】:

除非您应该永远将 PHP 文件夹添加到 WAMPServer 的路径中。见***.com/questions/15597067/…【参考方案2】:

如果您希望将所有内容都放在 bash cmd 窗口的 unixy 上下文中:

    打开 bash 窗口,你会发现默认情况下你在根目录下 目录

    $ pwd
    /
    

    切换到你的用户目录

    $ cd ~
    $ pwd
    /c/Users/nickw
    

    创建一个 .bash_profile 文件或附加到现有文件(使用单引号或 $PATH 将被插值)

    $ echo 'PATH=$PATH:/i/wamp64/bin/php/php5.6.19' >> .bash_profile
    

    检查文件是否有条目

    $ cat .bash_profile
    PATH=$PATH:/i/wamp64/bin/php/php5.6.19
    

    关闭 bash 窗口并打开一个新窗口进行检查

    $ php --version
    PHP 5.6.19 (cli) (built: Mar  2 2016 20:09:42)
    Copyright (c) 1997-2016 The PHP Group
    Zend Engine v2.6.0, Copyright (c) 1998-2016 Zend Technologies
    

【讨论】:

【参考方案3】:

如果您使用 git bash,只需输入 PATH="path to php goes here"

复制现有路径并对其进行修改可能很有用,这样您就不会丢失其他有用的路径。输入export查看路径。

新路径仅对会话有效。

【讨论】:

【参考方案4】:

您需要将 PHP 目录添加到您的路径中。在命令行上,它看起来像这样:

SET PATH=%PATH%;C:\wamp\bin\php\php5.5

如果有疑问,它是包含php.exe 的目录。

您也可以在 Windows 的控制面板中预设路径。例如,请参阅here,了解如何在 Windows 7 中执行此操作。

请注意,如果您从任意目录调用 PHP 可执行文件,该目录将成为工作目录。您可能需要调整脚本,以便它们使用正确的目录进行文件操作(如果有的话)。

【讨论】:

除非您应该永远将 PHP 文件夹添加到 WAMPServer 的路径中。见***.com/questions/15597067/…

以上是关于如何正确设置 PHP 环境变量以在 Git Bash 中运行命令的主要内容,如果未能解决你的问题,请参考以下文章

如何在 foreach 循环中设置变量以在 PHP 中进行外部访问?

如何设置 Laravel Boilerplate phpunit 以在 Homestead 环境中提供代码覆盖

如何在 Linux 中永久设置环境变量

设置环境变量以在 hudson 中构建

如何通过设置环境变量的 Windows 终端启动 Git Bash?

php命令行工具检测php文件语法格式是不是正确的方法是