Проверка версии PHP, на которой я работаю в Linux?

105

Я использую Centos 5, и мне нужно знать, какую версию PHP я использую, есть ли команда для этого, которую я могу запустить?

Roland
источник

Ответы:

181

Попробуйте выполнить следующее в командной строке.

Чтобы просто получить информацию о версии:

php -v

Или получить много информации:

php -i

Он должен предоставить вам всю необходимую информацию об установке php.

Paxxi
источник
17
+1 php -v был намного быстрее
hyperlulug
5
Спасибо, это сработало :-) php -i | grep 'PHP Version' дал мне ответ
Роланд
3
Только будьте осторожны, чтобы CLI-версия PHP (проверенная из командной строки) могла отличаться от той, которую обслуживает ваш веб-сервер (показанный phpinfo ())
Акшай Радж
@AkshayRaje Точно. Большинство людей, которые спрашивают «Какую версию PHP я использую?», Обычно ссылаются на PHP-модуль Apache / Nginx, а не на PHP CLI. Информация PHP CLI не имеет ничего общего с модулем PHP, используемым Apache / Nginx.
JakeGould
И php-cli, возможно, не установлен в системе
U.
18

Вы можете сделать index.phpфайл с

<?php phpinfo() ?>
hyperslug
источник
7
это дает преимущество работы на серверах, к которым у вас нет доступа по ssh, хотя лично я всегда предпочитал <? php?>, просто для
защиты на будущее
Ах, да, у меня есть привычка использовать теги ASP.
HyperSlug
2
На любом PHP-сайте часто можно увидеть версию в X-Powered-Byзаголовке каждого сгенерированного PHP-ответа HTTP. Если у вас нет доступа по SSH, иногда можно использовать phpshell.sourceforge.net . (Хотя с большой осторожностью, например, нужно проверить, доступна ли для записи папка, прежде чем запускать tarкоманду.)
Arjan
Во-первых, это ответ. Большинство людей, которые спрашивают «Какую версию PHP я использую?», Обычно ссылаются на PHP-модуль Apache / Nginx, а не на PHP CLI. Информация PHP CLI не имеет ничего общего с модулем PHP, используемым Apache / Nginx. Но @Arjan также, многие системные администраторы отключают отправку серверов заголовков «X-Powered-By» как часть усиления безопасности. Хотя это кажется удобным для разработчиков, подобные заголовки помещают вас в «список присосок» для атак ботнетов. Если вы запускаете сервер, и основной способ определения версии PHP - через «X-Powered-By», ваш процесс очень испорчен.
JakeGould
это должен быть правильный ответ
Нико
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, но вы можете начать с чего-то вроде:

об / мин -qa | egrep -i 'php | awk'

NVRAM
источник
3

использование

more /etc/php.ini

Это покажет вам:

  1. Версия Apache
  2. Версии PHP
  3. PHP функции
  4. Различные варианты относительно PHP
Панкай
источник