PHP (cli) 版本与我安装的 XAMPP 版本不匹配

Posted

技术标签:

【中文标题】PHP (cli) 版本与我安装的 XAMPP 版本不匹配【英文标题】:PHP (cli) version doesn't match XAMPP version I installed 【发布时间】:2017-03-04 01:48:18 【问题描述】:

最近我安装了 XAMPP 用于在我的 Windows 7 机器上进行本地开发。老实说,我根本不认为 php 是事先安装的。我安装了最新版本的 XAMPP 并配置为 php 5.6.24。我创建了一些虚拟主机,一切似乎都正常。

我遇到了一个问题,我需要确认我使用的是哪个版本的 PHP,所以我打开了我的命令行并输入了 php -v。出于某种原因,它报告我正在使用 PHP 5.4.25。确切的行是PHP 5.4.25 (cli) (built: Feb 5 2014 21:19:58)

我不记得使用过这个版本(我最近安装了 Visual Studio Community,这有关系吗?)。我也不明白为什么我的 CLI 报告一个版本,而 XAMPP 应该安装了另一个版本。我错过了什么吗?我需要为最新版本的Grav CMS 运行一些 gpm 命令,但是当我这样做时,它说它至少需要 5.5.9。

【问题讨论】:

看看this question你应该可以看到php的安装位置 看起来您的服务器中已经安装了 PHP。转到环境变量并查看 PATH 内容,如果那里有 php 路径,则将其替换为新的 PHP 路径(xampp) 尝试输入where php 以查看它指向哪个php exe。更新您的 Windows 环境路径变量以指向 XAMPP bin 路径。 啊,它指向我的保管箱中的旧 xampp 便携式设备... 【参考方案1】:

解决方案是卸载所有已安装的 xampp,然后重新安装 php 版本 > 7 的 xampp。

那么一切都应该正常。

发生在我身上的是我安装了两次 xampp。一 我的 C://(5.6 版)上的 xampp 和我的 D://(7.2 版)上的一个 xampp

当我在 D://xampp 上执行命令时

php --version

它从 C:// 而不是 D:// 获取 xampp php 版本。

【讨论】:

【参考方案2】:

可以安装多个版本的 php。

您需要确保执行的是 XAMPP 附带的 php-cli。

听起来您安装了另一个版本的 php,并且在您的 PATH 中,因此当您运行 php 时,该版本已加载。

您可以使用where 命令找出正在加载的文件。 从终端类型:where php

我不是 Windows 用户,但在 linux 上有一个 which 命令。显然这是windows的命令。这是关于它的SO帖子: Is there an equivalent of 'which' on the Windows command line?

无论如何,您可能希望删除该 php 文件并可能在其位置为 XAMPP 版本的 php-cli 创建一个符号链接

如果您删除/重命名文件并且新的php-cli 不在您的路径中,您可能会收到错误,因为系统将不知道php 是什么。

【讨论】:

谢谢!就是这样。我能够指向我较新的 php 安装,并且效果很好。谢谢! @drpcken 你能告诉我怎么做吗? :)

以上是关于PHP (cli) 版本与我安装的 XAMPP 版本不匹配的主要内容,如果未能解决你的问题,请参考以下文章

在 XAMPP 中为 wp-cli.phar 使用不同的 php.ini

需要带有 PHP 5.4 版本的 XAMPP - windows [关闭]

Redhat 下 XAMPP 安装部署 DVWA 教程

安装两个XAMPP或者更新XAMPP时, PHP版本还是旧版本的问题

php cli命令 自定义参数传递

怎么更换xampp里PHP的版本?