无法在 Mac OS X Snow Leopard 上更改 PHP 的路径位置

无法在 Mac OS X Snow Leopard 上更改 PHP 的路径位置

我的 Mac 上安装了 XAMPP,并且我想让命令行 PHP 使用与 XAMPP 相同的可执行文件,因为我已经自定义了 php 的 php.ini 文件。

我想要的 php 二进制文件位于:

/Applications/XAMPP//xamppfiles/bin/php

快速检查一下我的 CLI php 来自哪里:

Casey-Flynns-MacBook-Air:~ casey$ whereis php
/usr/bin/php

我尝试将以下行添加到我的 ~/.bash_profile 中:

export PATH=/Applications/XAMPP//xamppfiles/bin/:$PATH

对我的 $PATH 全局变量进行快速测试表明:

    Casey-Flynns-MacBook-Air:~ casey$ echo $PATH
/Applications/XAMPP//xamppfiles/bin/:/Applications/SenchaSDKTools-2.0.0-Developer-Preview/jsbuilder:/Applications/SenchaSDKTools-2.0.0-Developer-Preview/command:/Applications/SenchaSDKTools-2.0.0-Developer-Preview:/opt/local/bin:/opt/local/sbin:/sw/bin:/sw/sbin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/git/bin:/usr/X11/bin:/opt/local/bin:/usr/X11R6/bin:/Users/casey/.ec2/bin

但是当我从命令行执行“php”时,它仍然使用我不想要的二进制文件。有人知道可能发生了什么吗?

答案1

man whereis

The path searched is the string returned by the sysctl(8) utility for the ``user.cs_path'' string.

在我的 Mac OS X 上是这样的:
$ sysctl user.cs_path
user.cs_path = /usr/bin:/bin:/usr/sbin:/sbin

而是用来which验证你的 shell 将使用什么:
$ echo $PATH
/Users/xyz/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/X11/bin
$ which php
/Users/xyz/bin/php

我仍然认为在 $PATH 中有两个同名的程序并不好,但我看不到更好的解决方案(我认为你不能摆脱预安装的程序php并且/usr/bin从 PATH 中删除也不是很好......)。

相关内容