检查我在Linux上运行的PHP版本?


104

我正在运行Centos 5,我需要知道我正在运行哪个版本的PHP,是否可以运行此命令?

Answers:


180

尝试在命令行中运行以下命令。

仅获取版本信息:

php -v

或获取大量信息:

php -i

它应该为您提供有关php安装所需的所有信息。


17
+1 php -v快得多
hyperslug

5
谢谢,这个工作:-) php -i | grep“ PHP版本”给了我答案
Roland

3
请注意,PHP的CLI版本(从命令行检查)可能不同于您的网络服务器所提供的CLI版本(由phpinfo()显示)
Akshay Raje 2014年

@AkshayRaje确实是。大多数问“我正在使用哪个PHP版本?”的人通常是指Apache / Nginx PHP模块,而不是PHP CLI。PHP CLI信息与Apache / Nginx使用的PHP模块无关。
JakeGould '16

而且php-cli可能未安装在系统中
Furkat U.

18

您可以index.php使用

<?php phpinfo() ?>

7
这具有在您没有ssh访问权限的服务器上工作的优势,尽管就我个人而言,我总是更喜欢<?php?>,仅用于未来的验证:P
Phoshi

嗯,对,我有使用ASP标签的习惯。
hyperslug

2
任何 PHP网站上,通常可以X-Powered-By在每个PHP生成的HTTP响应的标头中看到版本。如果您没有SSH访问权限,则有时可以使用phpshell.sourceforge.net。(尽管要格外小心,就像在运行tar命令之前需要检查一个文件夹是否可写。)
Arjan

首先,这就是答案。大多数问“我正在使用哪个PHP版本?”的人通常是指Apache / Nginx PHP模块,而不是PHP CLI。PHP CLI信息与Apache / Nginx使用的PHP模块无关。但是@Arjan同样,许多系统管理员都禁用了作为安全加固一部分发送的“ X-Powered-By”标头服务器。尽管对开发人员来说似乎很方便,但类似的标头却使您进入了针对僵尸网络攻击的“吸盘”。如果您运行服务器,而确定PHP版本的主要方法是通过“ X-Powered-By”,则您的过程将非常有缺陷。
JakeGould '16

这应该是正确的答案
Nico

12

答案已被接受,但是RPM系统(RHEL,Centos,Fedora等)上的另一个选项是使用以下选项:

rpm -q php

而且在我使用它时,使用RPM在任何rpm安装的程序或文件的软件包中查找信息的一般方法与此相似(对于awk):

  1. 查找文件的完整路径(如果未知),例如$ PATH中的可执行文件:

    输入-path awk

  2. 查找包含文件的软件包的名称(包括版本):

    rpm -qf / usr / bin / awk

  3. 如果需要,请从该软件包中查询信息:

    rpm -qi gawk

对于Apache安装和使用的软件包,这有点棘手,因为它们可能不在$ PATH上,但是您可以从以下内容开始:

rpm -qa | egrep -i'php | awk'


3

采用

more /etc/php.ini

这将向您显示:

  1. Apache版本
  2. PHP版本
  3. PHP函数
  4. 有关PHP的各种选项
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.