我想更新我的 Mac 上的 PHP 本地版本。我进行了一些研究,但有点困惑。
如果我从终端运行 php -i,它会显示:
$ php -i
phpinfo()
PHP Version => 5.3.15
Configuration File (php.ini) Path => /etc
Loaded Configuration File =>
我确定我已经安装了 5.4 所以运行了 phpinfo();
PHP Version 5.4.5
Loaded config file: /usr/local/php5/lib/php.ini
我遇到的一个问题是,我似乎无法让任何 php.ini 文件工作,我得到了很多
Notice: Undefined index:
错误,所以错误报告太高,但无论我找到并编辑多少个 php.ini 文件,它都没有效果。
我不知道正在使用哪个版本的 PHP,也不知道为什么有两个版本。
是否可以禁用或删除其中一个,以便我确切知道发生了什么,然后我可以将其更新到较新的版本?
谢谢,
答案1
您的 Mac 上有两个 PHP 安装。其中一个是默认的 OS-X php,其二进制文件位于 下/usr/bin/php
,另一个似乎是liip 单行安装程序位于/usr/local/php5
php -i
当您在命令行上调用时,/usr/bin
将调用 MacOS-X 下的默认 php。当您运行 phpinfo() 脚本时,您的 WebServer 将调用位于 下的 PHP 的 apache 模块/usr/local/php5
。
因此,当您想要删除其中一个安装时,我建议删除下面的安装,/usr/local/php5
因为其他安装与您的操作系统捆绑在一起,并且文件位于整个文件系统中,而且要删除所有相关内容并不容易。
但是如果您想升级您的 PHP 安装,您可能只需再次调用 liip 的单行安装程序,它将在新的目录中安装新版本/usr/local/
并将其链接到/usr/local/php5
文件夹。
如果您想调用这些新的二进制文件,您可以调整您的 $PATH 变量,使其/usr/local/php5/bin
位于前面/usr/bin
,或者直接使用二进制文件的完整路径来调用它,如/usr/local/php5/bin/php -i
。