为什么命令行上的 php -v 仍然显示我的旧版本?

为什么命令行上的 php -v 仍然显示我的旧版本?

我目前使用的是 PHP 5.3.6,想升级到 5.4.x 或 5.5.x

通过此网站:http://php-osx.liip.ch/我已经安装了 PHP 5.5,当我登录终端(php -v)时,我得到了这个:

PHP 5.5.6 (cli)(构建于:2013 年 11 月 14 日 12:34:38)版权所有 (c) 1997-2013 PHP Group Zend Engine v2.5.0,版权所有 (c) 1998-2013 Zend Technologies 与 Xdebug v2.2.2,版权所有 (c) 2002-2013,作者 Derick Rethans

不过,当我创建一个新的index.php文件并检查“phpinfo();”函数时,它仍然是PHP 5.3.6。

我以前从未升级到其他版本的 PHP,所以我不知道具体该怎么做。

谁能解释一下,或者给我提供一个像样的教程?

答案1

我不想说,但请阅读手册。常见问题解答中的第一个条目是...

为什么命令行上的 php -v 仍然显示我的旧版本?

php-osx 不会覆盖 Apple 安装的 php 二进制文件,而是将所有内容安装在 /usr/local/php5 中。因此,新的 php 二进制文件位于 /usr/local/php5/bin/php 中。

您还可以调整 PATH 以包含该目录,例如,将以下内容写入 ~/.profile 文件中

导出 PATH=/usr/local/php5/bin:$PATH

这听起来很像您的问题。如果您正在运行任何脚本(Apache 除外),则可能最终需要对其进行相应调整。您可能希望使用 phpinfo 来确认 Apache 使用的是新 php 而不是旧 php。

假设您正确地完成了所有这些操作,并且您想要确保这一点 - 您可以用 运行 php -v /usr/local/php/bin/php -v。您还可以通过使用 textedit 或 nano 打开您的配置文件(例如 nano $home/.bash_profile)并添加行,将 php 的默认位置设为您帐户的新位置export PATH=/usr/local/php5/bin:$PATH

如果这是用于 Web 开发,您可以创建一个包含这些内容的文本文件,以确保 apache 选择“正确”版本的 php - 我倾向于将其保存在我的 Web 服务器目录的根目录中,作为 info.php

<?php

phpinfo();

?>

这在将扩展程序打入工作状态时也很有用

相关内容