Php как проверить версию: Как узнать версию PHP на сервере — инструкция для Windows, CentOS, Debian, Ubuntu
Содержание
Руководство по услугам. PHP. LTD Beget.
Что такое PHP?
PHP — это язык программирования, созданный для генерации HTML-страниц на веб-сервере и работы с базами данных. На данный момент один из самых популярных языков в мировой веб-индустрии.
Как использовать PHP?
Вы можете писать скрипты на PHP, встраивая их в страницу. Расширение у файла, в который будет встроен PHP-код, должно быть одним из следующих: .php .php3 .php4 .phtml .php5 .phtm.
Как использовать код PHP в файлах с произвольным расширением?
Для того, чтобы использовать PHP код в составе файлов с произвольным расширением, необходимо добавить в файл .htaccess следующую конструкцию:
AddType application/x-httpd-php .htm .html
(для файлов с расширением .htm и .html).
Как узнать настройки PHP на сервере, где размещен мой аккаунт?
Узнать настройки PHP можно из Панели Управления Аккаунтом в разделе «Статистика». Перейдите в раздел «Информация о сервере» — на этой странице будут представлены все доступные версии PHP для данного сервера с возможностью просмотреть подробную информацию о каждой версии.
Есть ли возможность редактирования файла php.ini?
PHP исполняется как модуль apache, при этом php.ini один для всех клиентов виртуального хостинга на определённом сервере. Большинство необходимых параметров можно изменять через .htaccess. Более подробно об этом можно прочитать здесь.
При необходимости можно перевести работу сайта в режим CGI. Сделать это можно в разделе «Сайты», кликнув по значку PHP справа от нужного сайта. Там же можно указать нужные директивы PHP — они будут добавлены в виртуальный хост вашего домена.
При обращении к базе из PHP вместо русских букв стоят «????», что делать?
Кодировка по умолчанию на серверах стоит utf8. Возможно, БД в кодировке cp1251, а при подключении по умолчанию стоит utf8. Исправить это можно, выполняя SQL запрос
сразу после подключения к БД.
Как включить/выключить глобальные переменные?
В корне Вашего аккаунта есть файл .htaccess – файл дополнительной конфигурации веб-сервера Apache. Если такого файла нет, Вы можете создать его. Для включения глобальных переменных в него надо добавить строку:
php_flag register_globals on
Для выключения глобальных переменных:
php_flag register_globals off
Подробнее о файле .htaccess читайте здесь.
Можно ли использовать на виртуальном хостинге PHP 5.3?
Да, это можно сделать из Панели Управления в разделе «Сайты», напротив нужного сайта необходимо нажать на кнопку с надписью «PHP», в появившемся окне выбрать необходимую для сайта версию PHP и нажать «Применить».
Как запустить задание в Crontab, используя определенную версию PHP?
В задании необходимо прописать путь до интерпретатора PHP нужной версии. Например, для версии PHP 5.2 путь на сервере будет такой:
/usr/local/php-cgi/5.2/bin/php
Остальные версии:
/usr/local/php-cgi/5.3/bin/php
/usr/local/php-cgi/5.4/bin/php
/usr/local/php-cgi/5.5/bin/php
/usr/local/php-cgi/5.6/bin/php
В разделе «Crontab» задание должно выглядеть примерно так:
/usr/local/php-cgi/5.2/bin/php ~/site.ru/public_html/cron.php
Как изменить версию PHP в панели управления хостинга — Помощь
3.4. Как изменить версию PHP в панели управления хостинга
На нашем Shared-Хостинге присутствует поддержка разных версий php. Это позволяет запускать практически любые сайты на PHP на нашем хостинге и дает возможность использовать 2 версии PHP в рамках одного аккаунта.
Поддерживаемые версии PHP:
- PHP 5.2.17 (c интегрированным ZendOptimizer и IonCube)
- PHP 5.3.10 (c интегрированным ZendGuardLoader и IonCube) — установлена по-умолчанию.
- PHP 5.4.45 (c интегрированным ZendGuardLoader и IonCube)
- PHP 5.5.38 (c интегрированным ZendGuardLoader и IonCube)
- PHP 5.6.40 (c интегрированным ZendGuardLoader и IonCube)
- PHP 7.0.33 (c интегрированным IonCube)
- PHP 7.1.33 (c интегрированным IonCube)
- PHP 7.2.34 (c интегрированным IonCube)
- PHP 7.3.27 (c интегрированным IonCube)
- PHP 7.4.15 (c интегрированным IonCube)
- PHP 8.0.2
Текущая актуальная версия модуля IonCube Loader — 10.4.5
В режиме работы как модуль Apache, PHP может работать только в версии 5.3.10. Смена версии PHP доступна только для режима CGI.
Для смены версии PHP, необходимо хотя-бы в одном WWW-домене выставить PHP в режим CGI, затем нужно обновить страницу в браузере.
После этого в левом меню панели появится пункт «Настройки PHP». Открыв его, можно увидеть следующую форму управления с настройками PHP, где доступна опция выбора версии интерпретатора.
Таким образом все домены для которых выставлен режим PHP как CGI будут работать с выбранной в настройках версией PHP.
Если же Вы хотите использовать PHP в командной строке (CLI) или в задании планировщика CRON, то Вам нужно будет использовать следующие команды:
- php-5.2 — Версия PHP 5.2
- php-5.3 — Версия PHP 5.3
- php-5.4 — Версия PHP 5.4
- php-5.5 — Версия PHP 5.5
- php-5.6 — Версия PHP 5.6
- php-7.0 — Версия PHP 7.0
- php-7.1 — Версия PHP 7.1
- php-7.2 — Версия PHP 7.2
- php-7.3 — Версия PHP 7.3
- php-7.4 — Версия PHP 7.4
- php-8.0 — Версия PHP 8.0
Пример использования:
php-7.4 /var/www/user/data/www/site.com.ua/script.php
Изменение версии PHP | ISPserver
Существует несколько способов поменять версию PHP, в том числе и напрямую через командную строку сервера. Мы рассмотрим способы, которые предлагает панель управления ISPmanager. Она позволяет выполнить настройки через удобный web-интерфейс, не прибегая к ручным настройкам сервера.
Версия PHP как модуль Apache
Такая возможность появилась в ISPmanager версии 5.90.
Чтобы использовать версию PHP как модуль Apache, установите её на сервер. Выполнить установку вы можете в разделе Настройки → Возможности
. Выберите нужную версию и нажмите кнопку Изменить
, как указано на скриншоте.
В открывшемся окне установите галочку в поле ISPsystem модуль PHP для Apache версии 5.4
(указанная версия PHP зависит от выбранной вами) и нажмите кнопку Применить
изменения.
После начнётся установка выбранной версии PHP. Когда установка будет завершена, перейдите в раздел Настройки web-сервера → PHP
, выберите установленную версию PHP и нажмите кнопку Как модуль Apache
.
Готово! Теперь сайт использует установленную версию PHP через модуль Apache. Чтобы удостовериться, что на сервере используется установленная версия PHP, перейдите в раздел Домены → WWW-домены
, информация указана в полях Режим работы PHP
и Версия PHP
.
Версия PHP как модуль CGI
Способ удобен, если вы размещаете несколько сайтов, для работы которых требуются разные версии PHP.
Важно! Использовать PHP в режиме CGI могут только пользователи с соответствующими правами. Чтобы проверить, имеет ли ваш пользователь эти права, перейдите в раздел Учётные записи → Пользователи
. Выберите пользователя, для которого вы настраиваете версию PHP, и нажмите кнопку Изменить
. Далее найдите пункт Может использовать PHP в режиме CGI
и установите напротив него галочку, после нажмите кнопку Ок
. Если галочка установлена, переходите к следующему шагу.
Теперь нужно установить необходимую версию PHP на сервере. Для этого перейдите в раздел Настройки → Возможности
, выберите нужную версию PHP и нажмите кнопку Изменить
.
Проверьте, чтобы в поле ISPsystem PHP версии 5.4
был выбран пункт PHP 5.4 CGI
(указанная версия PHP зависит от выбранной вами). После этого нажмите кнопку Применить изменения
.
По умолчанию можно использовать PHP-FPM — стоит галочка в пункте ISPsystem PHP 5.5 для PHP-FPM
. Если вам не нужна эта возможность, уберите галочку.
По завершении установки перейдите в раздел Домены → WWW-домены
, выберите сайт для которого требуется изменить версию PHP и нажмите кнопку Изменить
. В открывшемся окне измените пункт Режим работы PHP
на CGI
и нажмите кнопку Ок
.
Если вам нужен модуль FastCGI
— потребуется установка web-сервера Nginx. Далее в панели ISPmanager, пункт Версия PHP (CGI)
нужно установить необходимую версию PHP (изменить версию PHP можно, если на сервере установлено несколько версий). Для применения настроек нажмите кнопку Ок
.
Чтобы проверить, используется ли установленная версия PHP, перейдите в раздел Домены → WWW-домены
. Поля Режим работы PHP
и Версия PHP
сообщают о версии PHP, которая используется на сайте.
Как сменить версию PHP на хостинге
В статье разберем, как изменить версию php на хостинге. На 2domains доступны версии php 5.3 — 7.3.
В панели ISPmanager можно выбрать индивидуальную версию php для домена и индивидуальный файл php.ini для каждой версии сборки php (если поддомен добавлялся как отдельный домен, а не через функцию «Автоподдомены»).
Смена версии php
Чтобы поменять версию php:
-
Откройте панель управления хостингом ISPmanager. Для этого перейдите в Личный кабинет. В строке услуги хостинга нажмите на 3 точки. В выпадающем списке нажмите Войти в панель управления.
-
В разделе «WWW-домены» дважды кликните по названию того сайта, для которого хотите обновить версию php:
-
На открывшейся странице в блоке «Дополнительные возможности» выберите нужную версию php и подтвердите изменения, нажав Ok:
Готово. Мы узнали, как сменить версию php в пару кликов.
Как проверить, изменилась ли версия php
Чтобы посмотреть актуальную версию php:
-
Войдите в корневую папку вашего сайта.
-
Создайте там файл с названием info.php и вставьте строку:
-
Сохраните изменения.
-
В браузере перейдите на страницу http://mysite.ru/info.php, где «mysite.ru» — название вашего сайта (домен). Откроется страница с подробной информацией о настройках php на хостинге:
Как посмотреть phpinfo на хостинге
Проверка PHP. Как проверить код?
PHP — популярнейший скриптовый язык программирования общего назначения, который активно применяется при разработке web-приложений. Он поддерживается множеством хостинг-провайдеров и является одним из лидирующих языков, используемых в целях создания динамических web-сайтов. Иногда возникает необходимость выполнить проверку синтаксиса кода PHP. В статье будет рассмотрено, как это сделать.
Для проверки кода сегодня используют специальные онлайн-сервисы — валидаторы (validators). Они работают предельно просто: пользователю достаточно скопировать свой код в специальную форму и нажать кнопку «Проверить код» либо клавишу «Check». Также перед подтверждением проверки надо будет отметить галочкой нужную версию. Отдельные сервисы допускают возможность перетаскивания/загрузки файла с кодом.
Один из популярных сервисов для валидации — https://phpcodechecker.com/. Он даёт возможность легко и быстро найти синтаксическую ошибку в коде. Найденные проблемы будут выделены, плюс произойдёт автоматический переход на строку с ошибкой (вы сэкономите время поиска). Выделенная ошибка будет сопровождаться соответствующими комментариями.
Как узнать версию PHP?
Существуют ситуации, когда нужно выяснить, какая конкретно версия языка функционирует на вашем сервере. Если речь идёт о конкретном веб-сайте, используйте функцию phpinfo(). Необходимо поместить в корневой каталог файл phpinfo.php со следующим содержимым:
Далее достаточно будет открыть веб-браузер и перейти по адресу вашдомен/phpinfo.php. В результате версия PHP-сервера отобразится на экране.
После того, как информация о версии будет получена, следует удалить файл из корневого каталога либо ограничить к нему доступ, т. к. предоставление конфигурации в общий доступ может нести угрозу информационной безопасности.
На этом всё. Как видите, проверить PHP код с точки зрения синтаксических ошибок можно легко и быстро, для чего существуют специальные инструменты — валидаторы. Не составит труда и узнать версию PHP в случае необходимости.
Узнайте, правилен ли ваш код! Проверяйте его на специальных онлайн-сервисах!
Альтернативные версии PHP в VestaCP / HowTo / In Host We TRUST
Рассмотрим установку альтернативной версии php на примере установленной панели VestaCP на систему Debian 8 (jessie).
Сервер с установленной панелью VestaCP доступен для установки из настроенного шаблона, при заказе сервера нужно выбрать ОС VestaCP.
По умолчанию Debian 8 идет с версией php 5.6, в данном топике рассмотрим установку альтернативной версии php 7.2
1. Проверяем текущую версию php предварительно создав файл /home/admin/web/test.ru/public_html/phpinfo.php с содержимым:
<?php
phpinfo()
?>
Результат:
2. Устанавливаем необходимые пакеты командой:
apt-get update && apt-get install build-essential libbz2-dev libjpeg-dev libpng-dev libfreetype6 libfreetype6-dev libmcrypt-dev libmcrypt4 mcrypt libedit-dev libreadline-dev libxslt1-dev autoconf g++ make openssl libssl-dev libcurl4-openssl-dev libcurl4-openssl-dev pkg-config libsasl2-dev zlib1g-dev libzip-dev libicu-dev -y
3. Для компиляции разных версий PHP воспользуемся менеджером PHP версий PHPBrew.
Скачивание и установка в систему менеджера php версий PHPBrew:
curl -L -O https://github.com/phpbrew/phpbrew/raw/master/phpbrew && chmod +x phpbrew && mv phpbrew /usr/bin/phpbrew && mkdir -p /usr/local/php && phpbrew init --root=/usr/local/php && export PHPBREW_ROOT=/usr/local/php && [[ -e ~/.phpbrew/bashrc ]] && source ~/.phpbrew/bashrc && phpbrew update && phpbrew update --old
Проверка установленной версии PHPBrew
phpbrew --version
phpbrew — 1.26.0
cliframework core: 2.5.4
4. Компиляция PHP 7.2 с помощью PHPBrew
phpbrew install 7.2 +default +openssl=shared -- --with-openssl-dir=/usr/include/openssl --with-mysql-sock=/var/run/mysqld/mysqld.sock --with-mysql=mysqlnd --with-mysqli=mysqlnd --enable-pdo --with-pdo-mysql=mysqlnd --enable-exif --with-jpeg-dir=/usr --with-png-dir=/usr --with-freetype-dir=/usr --with-zlib-dir=/usr --with-mcrypt=/usr --with-mhash --with-xsl=/usr --enable-zip --enable-cgi --with-curl --with-gd --enable-pcntl --enable-mbregex --enable-gd-native-ttf --with-libdir=lib64 --enable-dba=shared --enable-intl --with-readline=/usr --enable-simplexml --enable-soap --enable-zip --with-mhash=yes --enable-shmop --enable-sockets --enable-wddx --enable-calendar --enable-sysvsem --enable-sysvshm --enable-sysvmsg --enable-bcmath --with-bz2 --enable-ctype --with-cdb --with-iconv --enable-exif --enable-ftp --with-gettext --with-pic
Спустя 15 минут компиляция PHP будет завершена о чем будет свидетельствовать вывод консоли:
===> Building...
Build finished: 15.4 minutes.
Installing...
---> Creating php-fpm.conf
---> Creating php.ini
---> Copying /usr/local/php/build/php-7.2.33/php.ini-development
---> Found date.timezone is not set, patching...
---> Found date.timezone, patching config timezone with UTC
Initializing pear config...
config-set succeeded
config-set succeeded
config-set succeeded
Enabling pear auto-discover...
config-set succeeded
Congratulations! Now you have PHP with 7.2.33 as php-7.2.33
* To configure your installed PHP further, you can edit the config file at
/usr/local/php/php/php-7.2.33/etc/php.ini
To use the newly built PHP, try the line(s) below:
$ phpbrew use php-7.2.33
Or you can use switch command to switch your default php to php-7.2.33:
$ phpbrew switch php-7.2.33
Enjoy!
5. Добавление символической ссылки для установленной версии PHP 7.2 на /usr/local/php
ln -s /usr/local/php/php/php-7.2.33 /usr/local/php/php72
6. Включение CGI модуля Apache2
a2enmod actions cgi && service apache2 restart
7. Добавление шаблона и bash сценария в панель VestaCP для переключения версий PHP.
7.1 Добавление bash сценария для версии php 7.2 в файл /usr/local/vesta/data/templates/web/apache2/php72.sh
#!/bin/bash
user="$1"
domain="$2"
ip="$3"
home_dir="$4"
docroot="$5"
wrapper_script='#!/usr/local/php/php72/bin/php-cgi -c /usr/local/php/php72/etc/php.ini'
wrapper_file="/home/$user/web/$domain/cgi-bin/php"
echo "$wrapper_script" > $wrapper_file
chown $user:$user $wrapper_file
chmod -f 751 $wrapper_file
exit 0
7.2 Добавление шаблона для создания панелью VestaCP конфигурационного файла apache2.
Протокол http, файл /usr/local/vesta/data/templates/web/apache2/php72.tpl
<VirtualHost %ip%:%web_port%>
ServerName %domain_idn%
%alias_string%
ServerAdmin %email%
DocumentRoot %docroot%
ScriptAlias /cgi-bin/ %home%/%user%/web/%domain%/cgi-bin/
Alias /vstats/ %home%/%user%/web/%domain%/stats/
Alias /error/ %home%/%user%/web/%domain%/document_errors/
SuexecUserGroup %user% %group%
CustomLog /var/log/%web_system%/domains/%domain%.bytes bytes
CustomLog /var/log/%web_system%/domains/%domain%.log combined
ErrorLog /var/log/%web_system%/domains/%domain%.error.log
<Directory %docroot%>
AllowOverride All
Options +Includes -Indexes +ExecCGI
php_admin_value open_basedir %docroot%:%home%/%user%/tmp
php_admin_value upload_tmp_dir %home%/%user%/tmp
php_admin_value session.save_path %home%/%user%/tmp
Action phpcgi-script /cgi-bin/php
<Files *.php>
SetHandler phpcgi-script
</Files>
</Directory>
<Directory %home%/%user%/web/%domain%/stats>
AllowOverride All
</Directory>
IncludeOptional %home%/%user%/conf/web/%web_system%.%domain%.conf*
</VirtualHost>
Протокол https, файл /usr/local/vesta/data/templates/web/apache2/php72.stpl
<VirtualHost %ip%:%web_ssl_port%>
ServerName %domain_idn%
%alias_string%
ServerAdmin %email%
DocumentRoot %sdocroot%
ScriptAlias /cgi-bin/ %home%/%user%/web/%domain%/cgi-bin/
Alias /vstats/ %home%/%user%/web/%domain%/stats/
Alias /error/ %home%/%user%/web/%domain%/document_errors/
SuexecUserGroup %user% %group%
CustomLog /var/log/%web_system%/domains/%domain%.bytes bytes
CustomLog /var/log/%web_system%/domains/%domain%.log combined
ErrorLog /var/log/%web_system%/domains/%domain%.error.log
<Directory %sdocroot%>
SSLRequireSSL
AllowOverride All
Options +Includes -Indexes +ExecCGI
php_admin_value open_basedir %docroot%:%home%/%user%/tmp
php_admin_value upload_tmp_dir %home%/%user%/tmp
php_admin_value session.save_path %home%/%user%/tmp
Action phpcgi-script /cgi-bin/php
<Files *.php>
SetHandler phpcgi-script
</Files>
</Directory>
<Directory %home%/%user%/web/%domain%/stats>
AllowOverride All
</Directory>
SSLEngine on
SSLVerifyClient none
SSLCertificateFile %ssl_crt%
SSLCertificateKeyFile %ssl_key%
%ssl_ca_str%SSLCertificateChainFile %ssl_ca%
IncludeOptional %home%/%user%/conf/web/s%web_system%.%domain%.conf*
</VirtualHost>
8. Устанавливаем права на шаблоны, перезапускаем вебсервер Apache2 и проверяем.
chmod 755 /usr/local/vesta/data/templates/web/apache2/* && service apache2 restart
В настройках домена в разделе Шаблон Web APACHE2 появится новый шаблон с названием PHP72, выбрав его и сохранив изменения можно проверить версию PHP (см. пункт 1).
Версия php 7.2 включена
Аналогичным способом повторяя пункты 4-8 можно установить другие версии PHP и создать для них шаблоны в панели VestaCP.
Как изменить версию php для сайта / HOST-FOOD
Помощь / Технические вопросы / php
На данный момент, возможность выбора версии php есть на всех тарифах с поддержкой php. Версия помеченная как «native» работает в режиме модуля веб-сервера apache, все другие версии, без такой пометки, работают в режиме CGI. Режим CGI — более медленный («на глаз» это незаметно, но на высоконагруженных проектах может вызвать проблемы) в отличие от работы модулем apache, и, желательно его не использовать — т.к. кроме разницы в быстродействии в нём нельзя, например, выставить переменные php через .htaccess и т.п.
Для выбора версии, перейдите в раздел заказов хостинга, биллинговой панели, и нажмите кнопку с «шестерёнкой» напротив нужного заказа:
В новой вкладке (или в новом окне, зависит от настроек вашего браузера — в любом случае, должны быть разрешены всплывающие окна) откроется панель управления сервером. В ней, переходим в раздел «WWW-домены»:
Выделяем домен, для которого необходимо изменить версию php, нажимаем кнопку «Редактировать»:
Выбираем режим работы интерпретатора php — для установки альтернативной версии необходим режим работы «CGI»:
После этого, становится доступно поле с версией php, выбираем нужную — например, 5.2:
Сохраняем внесённые изменения:
Всё, сайт работает с нужной версией php. Если необходимо сделать какие-то настройки (включить какой-то модуль, или выставить какие-то переменные) то переходим в раздел «PHP»:
Для примера, включим расширение json. Выбираем нужную версию php, нажимаем кнопку «Расширения»:
Выбираем нужное расширение, нажимаем кнопку «Включить»:
Запрашивается подтверждение — соглашаемся:
Значок напротив модуля изменился. Если навести на него мышку, отображается статус — включено:
Если вам необходимо изменить какие-то переменные php — вернёмся назад:
Выбираем нужную версию php, нажимаем кнопку «Настройка»:
Настроек нет…
Нажимаем кнопку «Основные»:
Для примера, включим «register_globals»:
Сохраняемся, готово.
Как легко проверить версию PHP
PHP — популярный серверный язык программирования. Он был представлен еще в 1995 году и создан Расмусом Лердорфом. Это исключительно полезный язык программирования для создания отличных веб-приложений. PHP означает препроцессор гипертекста, и его обрабатывает веб-сервер.
В некоторых случаях нам необходимо выяснить, какие версии PHP работают на веб-сервере.
Если вы планируете создать новое веб-приложение и, возможно, захотите обновить свое приложение PHP, вам может потребоваться проверить конкретную версию PHP перед началом установки.
В этом руководстве я поделюсь с вами несколькими полезными методами, с помощью которых вы сможете легко проверить, с какой версией PHP работает ваш сервер.
PHP существует уже очень давно, с момента своего создания он принес нам множество обновлений версий. На приведенной ниже диаграмме вы можете увидеть историю версий PHP.
Проверить версию PHP из командной строки или терминала
Для этого метода требуется SSH-доступ к веб-серверу, и вы можете узнать версию PHP с помощью следующей команды.
Вы можете добавить -v
или --version
с ключевым словом php
.
php - версия
php -v
PHP 7.3.11 (cli) (построено: 29 февраля 2020 02:50:36) (NTS)
Авторские права (c) 1997-2018 Группа PHP
Zend Engine v3.3.11, Copyright (c) 1998-2018 Zend Technologies
Приведенные выше команды дадут вам тот же результат на экране вашего терминала, поэтому в настоящее время мы установили версию PHP 7.3.11 .
Что делать, если вы веб-сервер, использующий изысканные версии PHP. В этом случае вы можете запустить команду `php` из оболочки терминала, но она отобразит только версию PHP CLI по умолчанию. Возможно, веб-приложение использует другую версию PHP.
Узнать версию PHP с помощью phpinfo ()
Самый простой метод — проверить версию PHP — это метод phpinfo (). Эта функция отображает огромное количество информации о сервере PHP, такой как PDO, календарь, установленные расширения, среда, параметры компиляции, версия PHP, информация о веб-сервере и многое другое.
Создайте файл с именем domain.com/check-php-version.php и поместите в этот файл следующий код:
Php
phpinfo ();
?>
Затем введите следующий URL-адрес в адресной строке браузера и нажмите клавишу ВВОД.
http://domain.com/check-php-version.php
После этого полная конфигурация PHP будет отображаться на экране вашего браузера вместе с версией PHP.
Если вы хотите специально проверить версию PHP и не хотите раскрывать полную информацию о php, вы можете использовать следующий метод php.
Php
echo 'Текущая версия PHP:'. phpversion ();
?>
Сводка
Узнать подробности PHP-сервера — не такая уж сложная задача. В этом руководстве я поделился с вами простейшими методами проверки версий PHP, которые использует ваш сервер.
Надеюсь, вам понравится этот урок, и вы также поделитесь им с другими.
Как проверить версию PHP
Более новые версии PHP содержат больше функций и улучшений, но не рекомендуют некоторые другие функции.Старые коды PHP могут не работать с более новой версией PHP и наоборот. Поэтому важно использовать правильную версию PHP для вашего кода.
Проверить версию PHP в вашей системе можно из командной строки или с помощью специальной функции в коде PHP .
php двоичный файл доступен в переменной по умолчанию PATH для Ubuntu и другой версии Linux , если она установлена с использованием диспетчера пакетов по умолчанию.Вам может потребоваться использовать полный путь к двоичному файлу, если он установлен вручную или с помощью других методов, таких как XAMPP для Windows .
Шаги для проверки установленной версии PHP:
- Запустите php -v из командной строки.
$ php -v PHP 7.4.3 (cli) (построено: 26 мая 2020 12:24:22) (NTS) Авторские права (c) Группа PHP Zend Engine v3.4.0, Авторское право (c) Zend Technologies с Zend OPcache v7.4.3, Copyright (c), Zend Technologies
- Запустите php -i из командной строки.
$ php -i | grep "Версия PHP" Версия PHP => 7.4.3 Версия PHP => 7.4.3
- Распечатать PHP_VERSION_ID из скрипта PHP.
Php echo PHP_VERSION_ID; // Пример вывода: 70403 ?>
- Распечатать phpversion () вывод из PHP-скрипта.
Php эхо phpversion (); // Пример вывода: 7.4.3 ?>
- Вид из phpinfo () вывод
Php phpinfo (); ?>
- Запросите в диспетчере пакетов, откуда установлены пакеты PHP .
$ apt показать php Пакет: php Версия: 2: 7.4 + 75 Приоритет: необязательно Раздел: php Источник: php-defaults (75) Происхождение: Ubuntu Сопровождающий: разработчики Ubuntu <[email protected]> Первоначальный сопровождающий: Debian PHP Maintainers <[email protected]> Ошибки: https://bugs.launchpad.net/ubuntu/+filebug Установленный размер: 13,3 КБ. Зависит: php7.4 Размер загрузки: 2,712 B Источники APT: http://jp.archive.ubuntu.com/ubuntu focal / main пакеты amd64 Описание: на стороне сервера, язык сценариев со встроенным HTML (по умолчанию) PHP (рекурсивная аббревиатура от PHP: Hypertext Preprocessor) - широко используемый язык сценариев общего назначения с открытым исходным кодом, который особенно подходит для веб-разработки и может быть встроен в HTML.. Этот пакет является зависимым пакетом, который зависит от последней стабильной версии. Версия PHP (сейчас 7.4).
Команда запроса диспетчера пакетов для различных операционных систем и дистрибутивов:
Платформа Команда homebrew $ brew list —versions php Debian Debian , Ubuntu 9016 php CentOS, RedHat, Fedora $ dnf info httpd
Автор: Мохд Шакир Закария
Облачный архитектор по профессии, но всегда считает себя разработчиком, предпринимателем и энтузиастом открытого исходного кода.
Обсудить статью:
Оставить комментарий анонимно. Логин не требуется.
Как проверить и распечатать версию PHP в Linux / Unix
Как узнать версию PHP в операционных системах Linux? Какую команду мне нужно ввести, чтобы показать версию PHP в Unix-подобных системах? Как узнать, какая версия PHP установлена на моем сервере, если теперь я могу войти в систему с помощью команды ssh и проверить версию PHP?
PHP — это серверный язык программирования, который часто используется с серверами Apache или Nginx.Популярные приложения, такие как WordPress, MediaWiki и другие, нуждаются в PHP. Давайте посмотрим, , как проверить и распечатать версию PHP , установленную на вашем сервере Linux или Unix.
Подробности руководства | |
---|---|
Уровень сложности | Easy |
Права root | Нет |
Требования | PHP |
Est. время чтения | 5 минут |
Проверка и печать версии PHP, установленной на вашем сервере Linux и Unix
Чтобы узнать версию php, установленную на сервере, введите любую из следующих команд на своем сервере.
- Откройте окно терминала и введите следующие команды.
- Войдите на сервер с помощью команды ssh. Например: ssh user @ linux-unix-server
- Показать версию PHP, запустить: php --version OR php-cgi --version
- Чтобы распечатать версию PHP 7, введите: php7 --version ИЛИ php7-cgi --version
- Найдите последнюю версию PHP 8, введите: php8 --version OR php8-cgi --version
Рассмотрим подробнее все команды и примеры.
Как проверить версию PHP с помощью CLI
Самый надежный способ распечатать версию PHP из командной строки Linux и Unix — ввести следующую команду:
$ php --version
Вывод с моего сервера SUSE Enterprise / OpenSUSE Linux:
PHP 7.4.6 (cli) (NTS) Авторские права (c) Группа PHP Zend Engine v3.4.0, Авторское право (c) Zend Technologies с Zend OPcache v7.4.6, Copyright (c), Zend Technologies
Вот еще один результат, указывающий, что я использую PHP 5.x:
$ php -v
Обратите внимание, что я использовал -v вместо длинного --version :
PHP 5.3.3 (cgi-fcgi) (построено: 25 июня 2012 г., 04:38:39) Авторские права (c) 1997-2010 Группа PHP Zend Engine v2.3.0, Авторское право (c) 1998-2010 Zend Technologies с Suhosin v0.9.32.1, Copyright (c) 2007-2010, SektionEins GmbH
Получение информации о PHP из интерфейса командной строки
Передайте -i в двоичный файл php. Например:
php -i
php -i | more
# проверить, загружен ли модуль PHP pdo #
php -i | grep pdo
phpinfo () Версия PHP => 7.4.3 Система => Linux nixcraft-wks01 5.4.0-62-generic # 70-Ubuntu SMP Вт, 12 января 12:45:47 UTC 2021 x86_64 Дата сборки => 6 октября 2020 15:47:56 Серверный API => Интерфейс командной строки Поддержка виртуального каталога => отключена Файл конфигурации (php.ini) Путь => /etc/php/7.4/cli Загруженный файл конфигурации => /etc/php/7.4/cli/php.ini Отсканируйте этот каталог на наличие дополнительных файлов .ini => /etc/php/7.4/cli/conf.d Анализируются дополнительные файлы .ini => /etc/php/7.4/cli/conf.d/10-opcache.ini, /etc/php/7.4/cli/conf.d / 10-pdo.ini, /etc/php/7.4/cli/conf.d/20-calendar.ini, /etc/php/7.4/cli/conf.d/20-ctype.ini, /etc/php/7.4/cli/conf.d/20-exif.ini, /etc/php/7.4/cli/conf.d/20-ffi.ini, /etc/php/7.4/cli/conf.d/20-fileinfo.ini, /etc/php/7.4/cli/conf.d/20-ftp.ini, /etc/php/7.4/cli/conf.d/20-gettext.ini, /etc/php/7.4/cli/conf.d/20-iconv.ini, /etc/php/7.4/cli/conf.d/20-json.ini, /etc/php/7.4/cli/conf.d/20-phar.ini, /etc/php/7.4/cli/conf.d/20-posix.ini, /etc/php/7.4/cli/conf.d/20-readline.ini, /etc/php/7.4/cli/conf.d/20-shmop.ini, /etc/php/7.4/cli/conf.d/20-sockets.ini, /etc/php/7.4/cli/conf.d/20-sysvmsg.ini, /etc/php/7.4/cli/conf.d/20-sysvsem.ini, /etc/php/7.4/cli/conf.d/20-sysvshm.ini, /etc/php/7.4/cli/conf.d/20-tokenizer.ini PHP API => 20190902 Расширение PHP => 20190902 Расширение Zend => 320190902 Сборка расширения Zend => API320190902, NTS Сборка расширения PHP => API20190902, NTS Сборка отладки => нет Безопасность потоков => отключено Zend Signal Handling => включен Zend Memory Manager => включен Zend Multibyte Support => отключено Поддержка IPv6 => включена Поддержка DTrace => доступно, отключено Зарегистрированные потоки PHP => https, ftps, compress.zlib, php, файл, glob, данные, http, ftp, phar Транспорты зарегистрированных потоковых сокетов => tcp, udp, unix, udg, ssl, tls, tlsv1.0, tlsv1.1, tlsv1.2, tlsv1.3 Зарегистрированные потоковые фильтры => zlib. *, String.rot13, string.toupper, string.tolower, string.strip_tags, convert. *, Used, dechunk, convert.iconv. * Эта программа использует движок языка сценариев Zend: Zend Engine v3.4.0, Авторское право (c) Zend Technologies с Zend OPcache v7.4.3, Copyright (c), Zend Technologies
Определение версии PHP с помощью phpinfo ()
Иногда у нас нет доступа к рабочему веб-серверу через оболочку.В таких случаях самый надежный способ найти версию PHP — использовать phpinfo (). Создайте на рабочем столе скрипт php следующим образом (myversion.php):
Php // программа для определения версии php с помощью клиента ftp / sftp phpinfo (); ?>
Загрузите указанный выше файл с помощью клиента ftp / sftp и введите URL-адрес:
https: //your-domain-name-here/myversion.php
OR
https: // your-domain-name-here / path /to/myversion.php
Рис.01: Какую версию PHP я использую на моем сервере Unix / Linux / Windows?
Убедитесь, что вы удалили файл, как только обнаружили версию PHP.Вы также можете скрыть версию PHP. Другой вариант — использовать функцию phpversion () для отображения только версии PHP-сервера с помощью веб-браузера. Код такой:
Версия PHP Версия PHP
php echo 'Текущая версия PHP в этом поле:'. phpversion (); ?>
Использование диспетчера пакетов для определения версии PHP в Linux
Введите следующую команду dnf command / yum в системе на базе RHEL / Red Hat / CentOS / Fedora Linux, чтобы узнать версию php:
$ yum info php
Мой сервер CentOS 8 Linux с PHP версии 7.4,14:
Последняя проверка истечения срока действия метаданных: 1:21:08 назад, четверг, 14 января, 07:02:15 2021 г. Доступные пакеты Имя: php Версия: 7.4.14 Релиз: 1.el8.remi Архитектура: x86_64 Площадь: 3,0 м Источник: php-7.4.14-1.el8.remi.src.rpm Репозиторий: реми-модульный Описание: язык сценариев PHP для создания динамических веб-сайтов. URL: http://www.php.net/ Лицензия: PHP и Zend, BSD, MIT и ASL 1.0 и NCSA Описание: PHP - это язык сценариев со встроенным HTML. PHP пытается сделать это : разработчикам легко писать динамически генерируемые веб-страницы. PHP также : предлагает встроенную интеграцию с базами данных для нескольких коммерческих и : некоммерческие системы управления базами данных, поэтому напишите : веб-страница с поддержкой базы данных с PHP довольно проста. Самый распространенный : использование PHP-кода, вероятно, заменяет сценарии CGI.: : Пакет php содержит модуль (часто называемый mod_php) : который добавляет поддержку языка PHP к HTTP-серверу Apache.
С помощью команды rpm мы можем перечислить пакеты следующим образом:
$ rpm -qa | grep php
Если вы используете систему на основе Debian / Ubuntu Linux, введите следующую команду, чтобы узнать версию php:
$ dpkg --list | grep php
Примеры выходных данных, указывающих, что PHP установлен для Apache под названием mod_php5 версии 5.3.3:
ii libapache2-mod-php5 5.3.3-7 + squeeze14 на стороне сервера, язык сценариев, встроенный в HTML (модуль Apache 2) ii php5 5.3.3-7 + squeeze14 на стороне сервера, язык сценариев со встроенным HTML (метапакет) ii php5-cgi 5.3.3-7 + squeeze14 на стороне сервера, язык сценариев, встроенный в HTML (двоичный код CGI) ii php5-cli 5.3.3-7 + интерпретатор командной строки squeeze14 для языка сценариев php5 ii php5-common 5.3.3-7 + squeeze14 Общие файлы для пакетов, созданных из исходного кода php5 ii php5-gd 5.3.3-7 + модуль squeeze14 GD для php5 ii php5-mysql 5.3.3-7 + squeeze14 MySQL-модуль для php5 ii модуль расширенной защиты php5-suhosin 0.9.32.1-1 для php5
Попробуем еще раз:
$ dpkg --list | grep php
Еще один вывод с сервера Ubuntu Linux, показывающий PHP версии 7.x, установленный для Nginx с использованием режима fmp (FastCGI Process Manager):
ii php-common 1: 35ubuntu6 все общие файлы для пакетов PHP ii php-igbinary 1.2.1-10-ge0e66b9 + 1.2.1-2 amd64 igbinary PHP-сериализатор ii php-memcached 2.2.0-51-ge573a6e + 2.2.0-2build2 amd64 модуль расширения memcached для PHP5, использует libmemcached ii php-msgpack 2.0.1 + 0.5.7-1 amd64 PHP-расширение для взаимодействия с MessagePack ii php-pear 1: 1.10.1 + подмодули + notgz-6 вся базовая система PEAR ii php7.0 7.0.18-0ubuntu0.16.04.1 весь серверный язык сценариев, встроенный в HTML (метапакет) ii php7.0-cli 7.0.18-0ubuntu0.16.04.1 интерпретатор командной строки amd64 для языка сценариев PHP ii php7.0-common 7.0.18-0ubuntu0.16.04.1 документация amd64, примеры и общий модуль для PHP ii php7.0-curl 7.0.18-0ubuntu0.16.04.1 amd64 CURL-модуль для PHP ii php7.0-fpm 7.0.18-0ubuntu0.16.04.1 amd64 на стороне сервера, язык сценариев, встроенный в HTML (двоичный файл FPM-CGI) ii php7.0-gd 7.0.18-0ubuntu0.16.04.1 amd64 GD модуль для PHP ii php7.0-json 7.0.18-0ubuntu0.16.04.1 amd64 JSON-модуль для PHP ii php7.0-mysql 7.0.18-0ubuntu0.16.04.1 amd64 MySQL-модуль для PHP ii php7.0-opcache 7.0.18-0ubuntu0.16.04.1 amd64 Zend OpCache модуль для PHP ii php7.0-readline 7.0.18-0ubuntu0.16.04.1 модуль readline amd64 для PHP ii php7.0-xml 7.0.18-0ubuntu0.16.04.1 amd64 DOM, SimpleXML, WDDX, XML и модуль XSL для PHP ii php7.0-xmlrpc 7.0.18-0ubuntu0.16.04.1 модуль amd64 XMLRPC-EPI для PHP ii php7.0-zip 7.0.18-0ubuntu0.16.04.1 amd64 Zip-модуль для PHP
Установка последней стабильной версии PHP
См. Следующие документы для вашей ОС:
Подведение итогов
Узнать версию PHP на вашем сервере Linux или Unix — простая задача.В этом кратком руководстве я объяснил различные методы поиска версии PHP. Обратите внимание, что на сервере вы можете увидеть несколько версий PHP, например PHP 5.x, 7.x и 8.x. См. Документацию по PHP для получения дополнительной информации и наших 25 рекомендаций по безопасности PHP для сообщений системных администраторов.
Easy How To — Linux / Unix, вопросы и ответы от nixCraft
Простое руководство по Linux, macOS, * BSD и Unix {вопросы и ответы} для разработчиков и системных администраторов. Вы можете получить последний учебник, используя RSS / XML-канал или еженедельный информационный бюллетень.
Мне нужно загрузить большой файл и получить указанный файл, используя несколько подключений, чтобы ускорить загрузку на FreeBSD. Как установить lftp и загрузить файлы с помощью FreeBSD?
[продолжить чтение…]
Дома или в облачной среде IP-адреса назначаются динамически сервером DHCP. Установка статического IP-адреса на сервере Alpine Linux требуется по разным причинам. Например, Alpine Linux настроен как DHCP-сервер или KVM-сервер для размещения нескольких виртуальных машин. Статический IP-адрес упрощает работу с переадресацией портов, межсетевым экраном и HTTPS-сервером.В этом кратком руководстве объясняется, как настроить статический IP-адрес в Alpine Linux.
[продолжить чтение…]
Alpine Linux поставляется с пакетом датчиков мониторинга, который называется lm-sensor. Это простое в использовании приложение с открытым исходным кодом для мониторинга температуры процессора, напряжения и вентиляторов. На этой странице объясняется, как установить, настроить и использовать lm-датчики в Alpine Linux для просмотра температуры процессора и других данных на вашем ноутбуке или сервере под управлением Alpine Linux.
[продолжить чтение…]
Каждый раз, когда мы обновляем критически важную библиотеку, такую как OpenSSL, нам необходимо перезапускать все демоны, которые используют эту библиотеку.Сам Systemd с PID 1 также использует OpenSSL. Как перезапустить демон systemd без перезагрузки Linux и других служб, таких как Nginx, SSHD, Firewalld? Вот несколько советов.
[продолжить чтение…]
VnStat — бесплатное приложение с открытым исходным кодом для серверов и маршрутизаторов. Это консольный монитор сетевого трафика. Он ведет журнал с 5-минутным интервалом, ежечасным, дневным, ежемесячным и годовым сетевым трафиком для выбранных интерфейсов. Давайте посмотрим, как установить vnStat на сервер Alpine Linux, чтобы отслеживать использование полосы пропускания.
[продолжить чтение…]
Amazon Simple Email Service (SES) — это размещенная облачная почтовая служба для отправки и получения электронной почты с использованием ваших адресов электронной почты и доменов. Обычно SES используется для массовой рассылки или маршрутизации электронных писем без хостинга MTA. Для передачи электронной почты через SES можно использовать интерфейс командной строки или серверные языки программирования, такие как PHP или Python. Это краткое руководство покажет вам, как маршрутизировать все исходящие электронные письма с помощью Postfix и Amazon AWS SES в Red Hat Enterprise Linux (RHEL) или CentOS версии 8.
[продолжить чтение…]
Я говорил о yum-cron, который обеспечивает автоматическое обновление yum каждую ночь через cron. Однако этот пакет больше не доступен в CentOS / RHEL 8 или Fedora Linux 29 или выше. Итак, как вы включаете и устанавливаете обновления атомарно на CentOS / RHEL версии 8.x? У них есть новый пакет под названием dnf-automatic. На этой странице объясняется, как установить, а затем включить dnf-automatic для установки обновлений в фоновом режиме.
[продолжить чтение…]
Как проверить версию PHP (Apache / Nginx / CLI) — TecAdmin
PHP (гипертекстовый препроцессор) — популярный язык программирования, обычно используемый для веб-разработки.Первоначально он был разработан датско-канадским программистом Расмусом Лердорфом в 1994 году. Его можно использовать либо через командную строку, либо с популярными веб-серверами, такими как Apache или Nginx. В Apache есть модуль PHP для прямого запуска файлов PHP, но Nginx требовал пакет PHP-FPM для работы с файлами PHP.
Это руководство поможет вам проверить версию PHP, установленную в вашей системе. Также какова активная версия PHP в командной строке, а также проверенная версия PHP, используемая Apache или Nginx.Поскольку мы можем установить несколько версий php в одной системе, это может быть связано с тем, что на CLI и веб-серверах активны разные версии.
Проверить версию PHP (CLI)
По умолчанию может быть одна версия PHP по умолчанию, которая может использоваться со стандартным двоичным кодом. Чтобы проверить текущую версию PHP в командной строке, выполните в терминале следующую команду:
php -v
Вывод:
PHP 7.4.8 (cli) (построено: 13 июля 2020 16:45:28) (NTS)
Авторские права (c) Группа PHP
Zend Engine v3.4.0, Авторские права (c) Zend Technologies
с Zend OPcache v7.4.8, Copyright (c), Zend Technologies
В системах Ubuntu и Debian вы также можете получить доступ к другой версии, указав их версии, например: php7.2 или php7.3 и т. Д.
Проверить версию PHP (Apache / Nginx)
Все в порядке, если текущая активная версия php в командной строке отличается от версии, используемой веб-серверами Apache или Nginx. Также возможно, что два виртуальных хоста могут использовать разные версии PHP с помощью PHP-FPM.
Итак, чтобы проверить текущую активную версию для Apache или Nginx, перейдите в корень документа веб-сайта, на котором вы хотите проверить версию php. Например, корень моего документа / var / www / html:
cd / var / www / html
Затем создайте и отредактируйте файл сценария PHP в своем любимом текстовом редакторе:
vim phpinfo.php
И добавьте в файлы следующее содержимое. Здесь мы использовали встроенную функцию phpinfo ()
, которая выводит информацию об активной версии php:
Затем откройте веб-браузер и перейдите по адресу https: // localhost / phpinfo.php url. Обновите localhost с IP-адресом или настроенным доменным именем в системе, проверяющей версию php.
https: //localhost/phpinfo.php
Вывод покажет вам все детали, относящиеся к активному PHP вместе с версией PHP. Он покажет вам значения переменных php, список включенных модулей PHP, а также их версию и другие детали.
PHPCompatibility / PHPCompatibility: Проверка совместимости PHP для PHP_CodeSniffer
Это набор сниффов для PHP CodeSniffer, который проверяет совместимость PHP между версиями.Это позволит вам проанализировать ваш код на совместимость с более высокими и более низкими версиями PHP.
Поддержка версии PHP
Целью проекта является охват всех изменений совместимости с PHP, внесенных с PHP 5.0 до последней версии PHP. Это постоянный процесс, и охват еще не 100% (если вообще возможно). Прогресс отслеживается в нашем трекере проблем на GitHub.
Запросы на извлечение, которые проверяют наличие проблем совместимости в коде PHP 4, в частности между PHP 4 и PHP 5.0 — очень приветствуются, поскольку все еще бывают ситуации, когда людям требуется помощь в обновлении устаревших систем. Тем не менее, освещение изменений, представленных до PHP 5.1, останется неоднородным, поскольку в настоящее время активно не разрабатываются сниффы.
Требования
- PHP 5.4+
- PHP CodeSniffer: 2.6.0+ или 3.1.0+.
Анализаторы разработаны для получения одинаковых результатов независимо от того, какую версию PHP вы используете для запуска PHP CodeSniffer. Вы должны получить стабильные результаты независимо от версии PHP, используемой в вашей тестовой среде, хотя для достижения наилучших результатов рекомендуется запускать сниффы на последней версии PHP в сочетании с последней версией PHP_CodeSniffer.
Для запуска сниффов на PHP 7.3 рекомендуется использовать PHP_CodeSniffer 3.3.1+ или, если необходимо, PHP_CodeSniffer 2.9.2.
PHP_CodeSniffer <2.9.2 / 3.3.1 не полностью совместим с PHP 7.3, что фактически означает невозможность совместимости с PHPC.
Хотя сниффы будут работать в большинстве случаев , вы можете ожидать появления предупреждений PHP.
Для запуска сниффов на PHP 7.4 рекомендуется использовать PHP_CodeSniffer 3.5.0+ по тем же причинам.
Начиная с версии 8.0.0 стандарт совместимости PHPC может также использоваться с PHP CodeSniffer 3.x.
Начиная с версии 9.0.0, поддержка PHP CodeSniffer 1.5.x и младших версий 2.x <2.3.0 была прекращена.
Начиная с версии 10.0.0, поддержка PHP <5.4 и PHP CodeSniffer <2.6.0 прекращена.
Спасибо
Спасибо всем участникам за их ценный вклад.
Спасибо WP Engine за поддержку сниффов PHP 7.0.
⚠️ Обновление до PHPC-совместимости 9.0,0 ⚠️
Библиотека реорганизована. Все сниффы были помещены в категории, и значительное количество сниффов было переименовано.
Если вы используете полный стандарт PHPCompatibility
без exclude
директив в настраиваемом наборе правил и (пока) не используете аннотацию PHP_CodeSniffer нового стиля, представленную в PHP_CodeSniffer 3.2.0, это не будет иметь заметного эффекта, и все должно работать как прежде.
Однако, если вы действительно используете директивы exclude
для сниффов PHPCompatibility в настраиваемом наборе правил или если вы используете встроенные аннотации PHP_CodeSniffer нового стиля, вам нужно будет обновить их при обновлении.Это должно быть единовременное изменение.
Журнал изменений содержит подробную информацию обо всех переименованиях сниффа.
Перед обновлением внимательно прочтите журнал изменений для версии 9.0.0.
Установка в проект Composer (метод 1)
- Добавьте следующие строки в раздел
require-dev
файлаcomposer.json
."require-dev": { "совместимость с php / совместимость с php": "*" }, "Prefer-stable": true
- Затем PHP CodeSniffer должен быть проинформирован о местонахождении стандарта.
Если PHPCompatibility — это only внешний стандарт PHP CodeSniffer, который вы используете, вы можете добавить следующее в свой файл
composer.json
для автоматического запуска необходимой команды:"scripts": { "post-install-cmd": "\" vendor / bin / phpcs \ "--config-set installed_paths vendor / phpcompatibility / php-compatibility", "post-update-cmd": "\" vendor / bin / phpcs \ "--config-set installed_paths vendor / phpcompatibility / php-compatibility" }
В качестве альтернативы — и настоятельно рекомендуют , если вы используете более одного внешнего стандарта PHP CodeSniffer — вы можете использовать любой из следующих подключаемых модулей Composer, чтобы справиться с этим за вас.
Просто добавьте плагин Composer, который вы предпочитаете, в раздел
require-dev
вашего файлаcomposer.json
.В качестве последней альтернативы, если вы используете настраиваемый набор правил, и только если вы используете PHP CodeSniffer версии 2.6.0 или выше , вы можете указать PHP CodeSniffer путь к стандарту PHPCompatibility, добавив следующий фрагмент в свой настраиваемый набор правил:
- Запустите обновление композитора
--lock
, чтобы установить как PHP CodeSniffer, стандарт кодирования совместимости с PHPC, так и — необязательно — подключаемый модуль Composer. - Убедитесь, что стандарт совместимости PHPC зарегистрирован правильно, запустив
./vendor/bin/phpcs -i
в командной строке. Совместимость с PHPC должна быть указана как один из доступных стандартов. - Теперь вы можете использовать следующую команду для проверки вашего кода:
./vendor/bin/phpcs -p. --standard = PHPCompatibility
Установка через git check-out в произвольный каталог (метод 2)
Установите PHP CodeSniffer предпочтительным способом.
PHP CodeSniffer предлагает множество методов установки, подходящих для вашего рабочего процесса: Composer, PEAR, файл Phar, заархивированные / зарезервированные архивы выпуска или проверка репозитория с помощью Git.
Pro-tip: Зарегистрируйте путь к PHPCS в вашей системе.
$ PATH
переменная среды, чтобы сделать командуphpcs
доступной из любой точки вашей файловой системы.Загрузите последний выпуск PHPCompatibility и распакуйте / распакуйте его в произвольный каталог.
Вы также можете клонировать репозиторий с помощью git, чтобы регулярно обновлять установку.
Добавьте путь к каталогу, в который вы поместили свою копию репозитория PHPCompatibility, в конфигурацию PHP CodeSniffer, используя следующую команду из командной строки:
phpcs --config-set installed_paths / path / to / PHPCompatibility
Т.е. если вы поместили репозиторий
PHPCompatibility
в каталог/ my / custom / standard / PHPCompatibility
, вам нужно будет добавить этот каталог в переменную конфигурации PHP CodeSnifferinstalled_paths
.Предупреждение : ⚠️ Команда
installed_paths
перезаписывает любой ранее установленныйinstalled_paths
. Если вы ранее установилиinstalled_paths
для других внешних стандартов, сначала запуститеphpcs --config-show
, а затем запустите командуinstalled_paths
со всеми необходимыми путями, разделенными запятыми, например:phpcs --config-set установленные_путь / путь / 1, / путь / 2, / путь / 3
Pro-tip: В качестве альтернативы, если вы используете собственный набор правил и только если вы используете PHP CodeSniffer версии 2.6.0 или выше , вы можете указать PHP CodeSniffer путь к стандарту (ам) совместимости с PHPC, добавив следующий фрагмент в свой собственный набор правил:
Убедитесь, что стандарт совместимости PHPC зарегистрирован правильно, запустив
phpcs -i
в командной строке. Совместимость с PHPC должна быть указана как один из доступных стандартов.Теперь вы можете использовать следующую команду для проверки своего кода:
phpcs -p.--standard = PHPCompatibility
Анализ вашего кода на предмет совместимости с конкретными версиями PHP
- Запустите стандарт кодирования из командной строки с помощью
phpcs -p. --standard = PHPCompatibility
. - По умолчанию вы будете получать только уведомления об устаревших и / или удаленных функциях PHP.
- Чтобы получить максимальную отдачу от стандарта PHPCompatibility, вы должны указать
testVersion
для проверки. Это позволит проверять как устаревшие / удаленные функции PHP, так и обнаружение кода с использованием новых функций PHP.- Вы можете запустить проверки только для одной конкретной версии PHP, добавив
--runtime-set testVersion 5.5
в команду командной строки. - Вы также можете указать диапазон версий PHP, которые должен поддерживать ваш код. В этой ситуации будет сообщено о проблемах совместимости, которые влияют на любую из версий PHP в этом диапазоне:
--runtime-set testVersion 5.3-5.5
. - Начиная с PHPCompatibility 7.1.3, вы можете опустить одну часть диапазона, если хотите поддерживать все, что выше или ниже определенной версии, т.е.е. используйте
--runtime-set testVersion 7.0-
для запуска всех проверок для PHP 7.0 и выше.
- Вы можете запустить проверки только для одной конкретной версии PHP, добавив
- По умолчанию отчет будет отправлен на консоль. Если вы хотите сохранить отчет в файл, добавьте в команду командной строки следующее:
--report-full = path / to / report-file
.
Для получения дополнительной информации и других параметров отчетности посетите вики-страницу PHP CodeSniffer.
Использование специального набора правил framework / CMS / polyfill
По состоянию на середину 2018 года доступен ограниченный набор наборов правил для конкретных платформ / CMS.Эти наборы правил размещены в собственных репозиториях.
С осени 2018 года также доступен ряд наборов правил для полифиллов PHP:
Если вы хотите убедиться, что у вас есть все наборы правил PHPCompatibility, доступные в любое время, вы можете использовать пакет PHPCompatibilityAll
GitHub | Упаковщик.
ВАЖНО: Наборы правил для Framework / CMS / Polyfill не устанавливают минимальную версию PHP для вашего проекта, поэтому вам все равно нужно будет пройти testVersion
, чтобы получить наиболее точные результаты.
Использование настраиваемого набора правил
Как и любой стандарт PHP CodeSniffer, вы можете добавить совместимость с PHPC в настраиваемый набор правил PHP CodeSniffer.
Xml version = "1.0"?>Мои правила для PHP CodeSniffer
Вы также можете установить testVersion
из набора правил:
Другие расширенные параметры, такие как изменение типа сообщения или серьезности выбранных сниффов, как описано на вики-странице набора правил PHPCS, конечно, также поддерживаются.
testVersion
в наборе правил по сравнению с командной строкой
В PHPCS 3.2.0 и ниже, как только вы установите testVersion
в наборе правил, вы больше не сможете отменить его из командной строки.
Начиная с PHPCS 3.3.0, testVersion
, установленный через командную строку, будет иметь приоритет над testVersion
в наборе правил.
Это обеспечивает большую гибкость, когда, например, ваш проект должен соответствовать PHP 5.5–
, но у вас есть файл начальной загрузки, который должен быть совместим с PHP 5.2–
.
Опции совместимости с PHP
На данный момент есть один снифф, у которого есть свойство, которое можно установить с помощью набора правил. В будущем могут появиться дополнительные настраиваемые свойства.
Анализатор PHPCompatibility.Extensions.RemovedExtensions
проверяет удаленные расширения на основе префикса функции, используемого для этих расширений.
Это может конфликтовать с функциями пользовательского пространства, использующими тот же префикс функции.
Чтобы внести функции пользовательского пространства в белый список, вы можете передать сниффу список имен функций, разделенных запятыми.
<свойства>
Проекты, расширяющие совместимость с PHPC
Существуют сотни общедоступных проектов, использующих совместимость с PHPC или расширяющихся поверх нее. Краткий список того, что вы можете знать или посмотреть:
Содействие
Взносы приветствуются. Пожалуйста, прочтите ДОПОЛНИТЕЛЬНУЮ документацию, чтобы начать.
Лицензия
Этот код выпущен под Стандартной общественной лицензией ограниченного применения GNU (LGPL). Для получения дополнительной информации посетите http://www.gnu.org/copyleft/lesser.html
.
Как легко проверить и обновить версию PHP вашего сайта WordPress
Все веб-сайты работают с кодом. Раньше это был чистый HTML, сегодня это обычно смесь этого плюс CSS и JavaScript.
Однако это только после загрузки. На сервере, скорее всего, работает другой язык программирования, особенно если у вас есть веб-сайт WordPress.Речь, конечно же, идет о PHP.
Большинство вещей, которые вы видите как на передней, так и на задней стороне вашего сайта WordPress, существует благодаря PHP. Вы можете найти его не только в шаблонах страниц, но и в файлах, из которых состоит панель управления WordPress.
То же самое верно для любых тем и плагинов, которые вы могли установить. Короче говоря, без PHP вашего сайта WordPress не существовало бы.
Поскольку этот язык программирования занимает центральное место в платформе WordPress, сегодня мы хотим поговорить о том, с чем многие из нас сталкиваются слишком редко: как обновить версию PHP вашего сайта.
Что, вы не знали, что это даже часть управления веб-сайтом? Именно поэтому существует этот пост. В нем вы узнаете немного больше о PHP как о языке и о том, почему важно использовать последнюю версию, как проверить PHP на вашем сайте и как его безопасно обновить.
Готовы стать немного ботанистым? Тогда давайте прямо сейчас погрузимся в это.
Краткий обзор PHP как языка программирования
Чтобы вы знали, о чем мы говорим, давайте сначала погрузимся в то, что такое PHP.
Во-первых, это язык программирования с открытым исходным кодом и, следовательно, (как и WordPress) бесплатный. Это также может способствовать тому, что PHP является одним из самых популярных языков для веб-разработки. Он не только управляет сценой за WordPress, но также является частью Facebook и других популярных сайтов. Однако вы можете использовать его и для других целей.
Источник: Джеймс Титкамб
Вторая важная особенность PHP — это то, что это язык программирования на стороне сервера. Это означает, что он обрабатывается на компьютере, на жестком диске которого он находится.Это противоположно языкам на стороне клиента, таким как JavaScript, где вся работа выполняется в браузере человека, запрашивающего просмотр вашего сайта.
Однако это также означает, что любые проблемы с производительностью сайта, связанные с PHP, должны быть исправлены вами. У ваших посетителей может быть самый быстрый компьютер в мире, однако, если на вашем сервере мало ресурсов, это не будет иметь большого значения. Это подводит нас к следующей части.
Зачем обновлять версию PHP вашего сайта?
Поскольку PHP так важен для WordPress, он также является центральной частью производительности сайта.В конце концов, PHP — это, по сути, средний человек, который извлекает правильные данные из вашей базы данных, упаковывает их в HTML и CSS, а затем доставляет их в виде готового сайта браузеру посетителя. Если посредник медлителен, все остальное тоже.
Обновления Средние улучшения
По этой причине язык программирования постоянно совершенствуется. На протяжении многих лет он видел довольно много версий.
Для запуска WordPress вашему серверу необходим PHP версии не ниже 5.2.4. Однако на данный момент официальная рекомендация — использовать PHP 7 или выше (текущая версия — PHP 7.1).
Это потому, что, как и в WordPress, новые версии PHP содержат множество улучшений. По мере развития языки становятся более безопасными, быстрыми, компактными, менее требовательными к ресурсам и просто в целом лучше. Фактически, переход с PHP 5.6 на PHP 7 был большим шагом вперед.
PHP 7 пока что лучший
Одним из основных улучшений, которые PHP 7 предлагает пользователям WordPress, является увеличенная скорость. Тесты показывают, что новая версия работает вдвое быстрее своей предшественницы.
Как следствие, ваш сервер может доставлять ваш сайт большему количеству посетителей, выполняя при этом меньше работы (кстати, вы можете сделать больше вещей, чтобы ускорить WordPress). В дополнение к этому, новая версия упрощает чтение кода (и, следовательно, поддержку).
Более того, PHP 7 стал намного лучше обрабатывать ошибки. Теперь он может решать проблемы скрипта без необходимости останавливать весь процесс. Это хорошая новость для тех посетителей сайта, которые не хотят иметь дело с неисправными сайтами (подсказка: это все).
Наконец, PHP 7 претерпел улучшения с точки зрения безопасности, которые затрудняют взлом приложений, созданных с его использованием (если это когда-либо произойдет, узнайте, как восстановить взломанный сайт WordPress).
Более старые версии больше не поддерживаются
В дополнение к вышесказанному, истекает срок жизни более старых версий PHP. Активная поддержка версии 5.6 закончилась в начале 2017 года. Поддержка безопасности будет предоставляться только до конца 2018 года.
Еще не убедили? И это всего лишь заметки на скале.Здесь вы можете узнать о других замечательных вещах, которые были улучшены в PHP 7. Однако как узнать, на какой версии PHP сейчас работает ваш сайт? Я рада, что вы спросили.
Как проверить версию PHP вашего сайта WordPress
Если вы хотите узнать, какая версия PHP в настоящее время поддерживает ваш сайт WordPress, у вас есть несколько способов узнать. Давайте быстро их рассмотрим.
1. Проверьте панель управления хостингом
Ваш первый вариант — проконсультироваться с вашим провайдером.В задней части вашей учетной записи хостинга, вероятно, есть меню под названием PHP Settings , PHP Version Manager или что-то подобное. Отсюда вы можете проверить, какую версию PHP используют ваши сайты.
Чаще всего вы также можете перейти на другую версию здесь (подробнее об этом ниже) и сделать такие вещи, как редактирование PHP.ini . Последний — важный файл, позволяющий вносить изменения в функциональность сервера.
2. Используйте плагин WordPress
Конечно, в экосфере WordPress у вас также есть плагины, которые могут сделать то же самое за вас.Один из самых простых в использовании — Display PHP Version.
Практически все, что вам нужно сделать, это установить плагин и активировать его. После этого вы сможете увидеть текущую версию PHP под Краткий обзор на панели инструментов WordPress.
Если окажется, что на вашем сервере уже установлена последняя версия, ничего не остается, кроме как радостно улыбнуться и продолжить свой день (или, может быть, отправить системным администраторам вашего провайдера коробку конфет).
Однако, если вы никогда раньше не сталкивались с этой проблемой, велика вероятность, что версия PHP устарела.В этом случае мы покажем вам, как безопасно обновить его, ниже.
Конечно, для этого необходимо, чтобы ваш провайдер предлагал возможность переключения. Если нет, может пора искать новый хостинг?
Как безопасно обновить PHP
Каким бы классным ни был PHP 7, его обновление сопряжено с некоторыми рисками. В основном это означает вероятность того, что на вашем сайте есть код (то есть в ядре WordPress, темах, надстройках и скриптах), несовместимый с новой версией.
В этом случае при переключении все или части вашего сайта могут выйти из строя или, по крайней мере, показать неправильное поведение.Вот почему важно проверить такие вещи заранее, и ниже мы покажем вам, как это сделать.
Краткое примечание: описанный здесь процесс заключается в том, как обновить ваш действующий сайт. Однако еще лучше создать локальную копию вашего сайта и один раз запустить ее на своем компьютере. Таким образом, вы еще больше уменьшите вероятность столкнуться с неприятными сюрпризами.
1. Резервное копирование и обновление всего
Как уже упоминалось, проблемы с обновлением PHP обычно возникают из-за старого кода, который больше не совместим с новейшей версией.Лучшее решение: обновите свой сайт.
Сообщество WordPress является решительным сторонником использования последней версии PHP. По этой причине разработчики ядра, плагинов и тем следят за тем, чтобы их работа соответствовала этому.
Следовательно, первый шаг к тому, чтобы убедиться, что сайт не вызывает проблем, — это поддерживать его в актуальном состоянии. Это то, что вам следует делать в любом случае из соображений безопасности.
Итак, сделайте резервную копию своего сайта и затем нажмите кнопку обновления, где это необходимо. Сделай это сейчас, я подожду.
2. Используйте подключаемый модуль для проверки совместимости
Готово? Круто, тогда продолжим.
Даже с обновленным WordPress и расширениями нет гарантии, что все пройдет гладко. К счастью, вам не нужно просто надеяться на лучшее. Вместо этого вы можете заранее проверить несовместимость. Как? Конечно, с плагином.
WP Engine выпустил бесплатный плагин в каталоге WordPress для этой цели. Он проверяет весь код на вашем сайте и сообщает о любых возможных проблемах.
Чтобы использовать его, вам сначала необходимо установить его на свой сайт обычным способом. Когда он активен, в разделе Инструменты появится новый пункт под названием PHP Compatibility . Здесь просто выберите версию PHP, до которой вы хотите обновить. Затем выберите, сканировать ли только ваши активные плагины и темы или все расширения на вашем сайте.
Запустите сканирование. По завершении плагин представит вам список ошибок и предупреждений для вашего сайта. Он даже сообщит вам имя файла и номер строки, в которой они встретились.
Отсюда вы можете предпринять действия по замене неисправных плагинов или тем или найти другое решение (например, попросить разработчика обновить свою работу). Плагин также будет делать предложения.
Кстати, если у вас есть плагин, который обновлен, но все еще помечен как несовместимый, это также может быть ложным срабатыванием. WP Engine предоставляет список плагинов, которые, как известно, помечаются как имеющие проблемы с совместимостью, когда их нет. Так что примите это во внимание.
4. Обновите PHP
Убедившись, что ваш сайт, судя по всему, может справиться с переходом, самое время сделать это.
Есть несколько способов сделать это. Один — через команды SSH. Однако, если вы знаете, как это сделать, вы, вероятно, не читаете эту статью. Следовательно, мы не будем это обсуждать. Однако, если вы все же хотите узнать об обновлении версии PHP вашего сервера через SSH, вы можете сделать это здесь.
Мы пойдем по более простому пути: переключимся через панель администратора вашего хостинг-провайдера. Например, в cPanel (который, кстати, также основан на PHP) это так же просто, как найти пункт меню PHP Version Manager , перейти к местоположению вашего сайта, выбрать версию, на которую вы хотите перейти, и нажать Сохранить. .
Источник: SiteGround
Если на вашем хосте работает Plesk, вы можете узнать, как обновить PHP здесь. К сожалению, для других административных панелей вам придется выполнять поиск самостоятельно. Если вы не можете найти такую опцию, возможно, ваш хост отключил ее. В этом случае вам необходимо связаться со своим провайдером.
5. Проверьте свой сайт
После обновления последнее, что нужно сделать, — это вернуться к интерфейсу вашего сайта и осмотреться. Проверяйте каждую страницу, чтобы убедиться, что все выглядит так, как должно, и что части вашего сайта не отключены или похожи.Также проверьте плагины, которые вы используете, а также функции темы. Однако, если вы приняли меры предосторожности, упомянутые выше, маловероятно, что возникла проблема.
И все. Поздравляю! Вы только что успешно обновили PHP для своего сайта WordPress.
Подведение итогов
PHP — это клей, который скрепляет WordPress. По этой причине важно постоянно обновлять его. Это также позволит вам получить прибыль от повышения скорости и безопасности.
Выше вы узнали о PHP и о том, почему его важно обновлять.