версию php что это
Версии PHP: зачем их обновлять и чем они различаются
Почти 80% всех существующих сайтов, по данным W3Techs, работают на базе языка программирования PHP. Значительную их часть составляют сайты, созданные с помощью WordPress и других популярных CMS. Однако, несмотря на такую распространнёность, не все владельцы сайтов знают о необходимости переходить с устаревших версий PHP на более актуальные. Что отражается на качестве работы сайтов.
Кратко о версиях PHP
Какие версии PHP считаются актуальными, а какие — устаревшими? Чтобы разобраться в этом, рассмотрим этапы жизненного цикла версий этого языка:
Релиз. Выпускается новая версия PHP, которая прошла все этапы предварительного тестирования и подходит для использования в «боевых условиях».
Активная поддержка. В течение двух лет после релиза версия продолжает совершенствоваться. Выходят регулярные обновления, вносятся корректировки и исправляются баги. Обеспечивается полная безопасность версии.
Минимальная поддержка. Ровно через два года после релиза работа по развитию версии прекращается. В течение следующего года происходят только критические обновления, касающиеся серьёзных угроз безопасности.
Завершение жизненного цикла. Через год критических обновлений защиты версия перестаёт поддерживаться полностью. Однако ей можно продолжать пользоваться, но уже на свой страх и риск.
На момент публикации этого материала продолжают поддерживаться три версии PHP:
7.4 (дата релиза — 28 ноября 2019 года, самая актуальная версия);
7.3 (дата релиза — 6 декабря 2018 года, активная поддержка подходит к концу);
7.2 (дата релиза — 30 ноября 2017, активно не поддерживается, важные обновления безопасности скоро перестанут выходить).
Версии 7.1, 7.0 и все версии PHP 5 больше не обновляются. А уже в конце 2020 года самой актуальной станет версия 8.0.
А что насчёт PHP 6? Если вы не знаете, почему шестые версии здесь не упоминаются, то сейчас поясним.
PHP 6: строили, строили, но не построили
На разработку версии 6.0 было потрачено немало времени. Предполагалось, что самым важным нововведением в ней станет поддержка символов Юникода, благодаря которой возможности языка были бы расширены. Однако разработчики PHP 6 столкнулись со множеством трудностей, что вынудило их постепенно отказаться сначала от внедрения Юникода, а затем и вообще от запуска версии 6.0.
Пока шла работа над PHP 6, на эту тему было выпущено немало статей и книг. И представление о PHP 6 как о версиях языка с внедрённым Юникодом уже успело устояться в IT-сообществе. Поэтому новому поколению языка, пришедшему на смену PHP 5, было решено присвоить номер 7.
PHP 7: обновление, которое ждали больше 10 лет
Первая версия PHP 7 была представлена ещё в конце 2015 года, но до сих пор почти половина сайтов в мире, по информации WTechs, не перешли на PHP 7 и остаются на PHP 5. Каких возможностей лишены те, кто всё ещё не обновился?
С заботой о пользователях мобильных гаджетов разработчики также поработали над исполнением движка и уменьшили потребление памяти при работе PHP. Также с помощью Abstract syntax tree (AST) операционный код стал более производительным. И в целом код на PHP 7 стал чище, понятнее и удобнее.
Помимо внедрения нововведений, в версии 7.0 изменили или вовсе убрали устаревшую и ненужную функциональность. С одной стороны, это несколько нарушило совместимость языка с ранее созданным и необновлённым ПО. Но с другой, принятые меры позволили сделать настоящий прорыв в развитии PHP.
PHP 8: взгляд в будущее
Версия 8.0 активно разрабатывается в данный момент, но о ней уже кое-что известно. Планируется, что в новейших версиях PHP будет генерироваться меньше кода. Для этого будет использоваться технология JIT (Just in Time). С её помощью при выполнении приложения весь код будет не компилироваться заново, а частично заимствоваться из уже скомпилированных версий.
Компиляции станет меньше и благодаря технологии FFI (Foreign Function Interface), которая упрощает вызов функций, написанных на разных компилируемых языках программирования. Благодаря JIT и FFI производительность PHP 8 должна ощутимо повыситься по сравнению с PHP 7.
Релиз первой альфа-версии 8.0 намечен на лето этого года. Затем традиционно будут представлены несколько альфа- и бета-версий, а также релизов-кандидатов, после чего 3 декабря 2020 года ожидается выпуск финального варианта.
Кратко об обновлении PHP
Какую версию PHP лучше всего использовать? Конечно же, самую актуальную на данный момент. Тогда вы всегда будете получать:
О работе с PHP на VPS мы пока говорить не будем, так как для этого нужен отдельный материал. Поэтому дальше мы дадим рекомендации пользователям виртуального и специализированного хостинга.
Узнайте, какая версия PHP используется на вашем сайте. Эта информация доступна в настройках веб-сервера: например, на хостинге «Джино» они расположены здесь). Владельцы сайтов на WordPress могут увидеть текущую версию PHP в панели администратора, в разделе Инструменты / Здоровье сайта / Информация. Также вы можете написать этот скрипт, разместить его в файлах сайта и обратиться к нему из браузера:
В результате будет показана информация о версии.
Если ваша текущая версия PHP не входит в число поддерживаемых, взвесьте все «за» и «против» перед обновлением. Ведь чем старее скрипты вашего сайта, тем сложнее может быть перейти на поддерживаемую версию PHP. Тем, кто готов обновиться, нужно сделать следующее:
Убедитесь, что у вас сохранена свежая резервная копия файлов сайта.
Проверьте совместимость используемого ПО, фреймворков, библиотек, плагинов с выбранной вами версией PHP. Если что-то из этого не совместимо с ней, убирайте и заменяйте на более современные аналоги.
Измените версию PHP на хостинге, через настройки сервера в контрольной панели или через запрос в техподдержку.
После обновления протестируйте все функции сайта, при тестировании проверяйте лог на предмет «Fatal error» и других ошибок, которых раньше не было. Если все функции работают, а на страницах сайта появляются предупреждения PHP — отключите отображение ошибок.
Если после обновления возникли серьёзные нарушения в работе сайта, верните старую версию PHP. Разберитесь в проблемах сами или обратитесь за помощью к специалистам.
Чтобы переход на новую версию PHP никогда не составлял большого труда, постоянно адаптируйте свой сайт под последнюю поддерживаемую версию языка. А также используйте регулярно обновляемые плагины и ПО, избавляясь от всего, что не обновлялось больше года и не подлежит использованию с актуальными версиями PHP.
Как проверить версию PHP
PHP — один из наиболее часто используемых языков программирования на стороне сервера. Между версиями PHP есть некоторые важные различия, поэтому в некоторых ситуациях может потребоваться знать, какая версия работает на вашем сервере.
Например, если вы обновляете свое приложение или устанавливаете новое, для которого требуется определенная версия PHP, перед началом установки вам необходимо узнать версию вашего PHP-сервера.
В этой статье мы покажем вам, как проверить, какая версия PHP работает на вашем сервере.
Проверка версии PHP с помощью phpinfo()
В корневой каталог документов веб-сайта загрузите следующий файл PHP с помощью клиента FTP или SFTP :
Как только вы узнаете, какая у вас версия PHP, удалите файл или ограничьте к нему доступ. Предоставление публичного доступа к вашей конфигурации PHP может создать угрозу безопасности вашего приложения.
Проверка версии PHP из командной строки
Если у вас есть SSH-доступ к серверу, вы можете использовать двоичный файл PHP CLI для определения версии вашего PHP.
Команда выведет информацию о версии PHP и завершит работу. В этом примере версия PHP-сервера 7.3.11 :
Если на сервере установлено несколько версий PHP, при запуске команды php будет показана версия интерфейса командной строки PHP по умолчанию, которая может не совпадать с версией PHP, используемой на веб-сайте.
Выводы
Определение версии PHP-сервера — относительно простая задача.
В этом руководстве мы показали несколько различных вариантов того, как найти версию PHP, на которой в настоящее время работает ваш сервер.
Не стесняйтесь оставлять комментарии, если у вас есть вопросы.
phpinfo
(PHP 4, PHP 5, PHP 7, PHP 8)
phpinfo — Выводит информацию о текущей конфигурации PHP
Описание
Выводит большое количество информации о текущем состоянии PHP. Сюда входит информация о настройках компиляции PHP, о модулях, о версии, информация о сервере и среде выполнения (если PHP компилировался как модуль), окружении PHP, версии ОС, о путях, об основных и локальных значениях настроек конфигурации, о HTTP-заголовках и лицензии PHP.
Так как каждая система имеет свои особенности, phpinfo() используется в основном для проверки настроек конфигурации и для просмотра доступных предопределённых констант в данной системе.
phpinfo() также используется в целях отладки, так как содержит все данные EGPCS (Environment, GET, POST, Cookie, Server).
Список параметров
Возвращаемые значения
Возвращает true в случае успешного выполнения или false в случае возникновения ошибки.
Примеры
Пример #1 Пример использования phpinfo()
// Показывать всю информацию, по умолчанию INFO_ALL
phpinfo ();
// Показывать информацию только о загруженных модулях.
// phpinfo(8) выдаёт тот же результат.
phpinfo ( INFO_MODULES );
Примечания
В режиме CLI phpinfo() выводит обычный текст вместо HTML.
Смотрите также
User Contributed Notes 20 notes
After reading and trying various functions, I couldn’t find one that correctly parses all the configurations, strips any left-over html tag and converts special characters into UTF8 (e.g. ‘ into ‘), so I created my own by improving on the existing ones:
$phpinfo = array(‘phpinfo’ => array());
// Strip everything after the
Configuration
]*>\s*Configuration.*)
return array();
>
The output looks something like this (note the headers are also included but are prefixed with ‘# ‘, e.g. ‘# Directive’):
Array
(
[phpinfo] => Array
(
[0] => PHP Version 5.6.5
[System] => Darwin Calins-MBP 15.0.0 Darwin Kernel Version 15.0.0: Wed Aug 26 19:41:34 PDT 2015; root:xnu-3247.1.106
Как обновить PHP сайта и зачем это нужно
Лучшее — враг хорошего? Мы рассмотрели, как обновить версию PHP, на которой работает ваш сайт, и для чего это нужно.
Актуальная версия PHP
Сейчас проходит бета-тестирование PHP 7.3 — последний релиз в этом семействе. Актуальной на сегодняшний момент считается 7.2, которая превосходит в скорости и функциональности все прошлые версии.
Вот неполный список возможностей PHP 7:
Как обновить PHP на Windows
Здесь все очень просто и прозаично:
Скачиваем последнюю версию PHP
Прописываем заново настройки в Apache и PHP.
Но прежде чем обновлять, нужно внимательно изучить раздел Appendices в документации к новой версии. В нем описывается устаревший функционал, который больше не применяется в языке. Новые версии не поддерживают старый код: особенно трудна миграция с пятой на седьмую, у которой очень слабая обратная совместимость.
Если разработчик использует неподдерживаемые функции, то кусок кода, в котором они есть, просто не заработает. Поэтому перед обновлением нужно серьезно проанализировать этот раздел и в соответствии с ним — свой код.
Зачем обновлять, если все работает
Резонный вопрос, которым задаются многие программисты. Если не обновлять язык на собственном сервере, вы просто лишаете себя преимуществ и возможностей очередной версии.
В каждом релизе PHP появляются новые фишки и функции, а также закрываются уязвимости. Например, is_countable позволяет определить тип переменной — перечисляемый или нет. Это очень удобная возможность для веб-разработчиков. Сейчас приходится использовать для определения типа переменной if, а в PHP 7.3 это можно будет сделать одной функцией.
Однако обновление версии PHP — это болезненный процесс для команды разработки, означающий многодневный рефакторинг кода и исправление ошибок — всё из-за проблем с обратной совместимостью в этом языке. Ранее установленные плагины и скрипты могут конфликтовать с новой версией, работать некорректно или не подключаться вообще, добавляя головной боли разработчикам.
Веб-хостинг Plesk в своем блоге на Хабре выложил статистику, какие версии PHP используют их пользователи на своих сайтах. В начале марта 2018 года ситуация выглядела вот так:
Как видите, самую последнюю версию используют очень немногие. Консервативное большинство остается верным надежным технологиям — от PHP 5.1 до 5.6.
Обновлять или не обновлять: вот в чем вопрос
Мы скажем так: Святого Грааля в проблеме обновления нет. Подходить к нему нужно с позиции целесообразности. Большой проект перевести на PHP 7 будет сложно: придется рефакторить всю кодовую базу, но ради чего? Любое изменение должно исходить из рабочей потребности.
Если проблем с поддержанием работоспособности сайта и скоростью загрузки нет, то переход на более современную версию — лишняя трата времени и средств. Если разработчикам всего хватает в функционале — в обновлении тоже нет смысла. Переход на новую версию не должен обосновываться тем, что это круто, модно и молодежно.
Заключение
Мы рассказали, как обновить PHP, и коснулись некоторых важных нюансов. Если вы хотите знать больше и стать высокооплачиваемым специалистом, советуем пройти наш курс «PHP-разработчик от 0 до PRO». Из него вы узнаете все необходимое для профессиональной работы с этим языком.
Автор в сфере IT, digital, экономики и финансов. Ведет некоммерческий проект для начинающих писателей «ЛитЦех».
Как узнать версию PHP на сервере
PHP – это скриптовый язык, который используется преимущественно при разработке приложений. С его помощью можно отправлять формы, работать с базами данных, использовать сессии, cookies и многое другое. От версии PHP, установленной на сайте или сервере, зависит то, как и какие возможности языка вы сможете использовать в проекте.
Поговорим о том, как узнать версию PHP сайта и сервера, причем разберем несколько способов.
Создание файла info.php и перемещение его на сервер
Сначала пробуем создать файл с прописанным содержимым. С его помощью мы определим конфигурацию интерпретатора PHP. Сделать это, кстати, можно двумя способами – на компьютере (а затем скопировать файл в корень сайта) или же сделать все прямо в файловом менеджере.
Первый способ: Открываем любой блокнот или редактор кода (лучше всего), потом вписываем в него вот такое значение:
Сохраняем это и даем название документу – info.php.
Второй способ: Открываем файловый менеджер через панель управления и переходим в корневую папку. Путь к ней – /wordpress/public_html. Жмем по пункту «Файл», в выпадающем меню выбираем элемент «Новый файл».
Теперь указываем название и формат будущего файла.
Вписываем в содержимое вот такое значение:
Потом сохраняем изменения нажатием на соответствующую кнопку и закрываем окно.
Теперь переходим к проверке. Для этого надо открыть новую вкладку в браузере и ввести там такую ссылку:
Здесь site.com нужно заменить ссылкой на ваш сайт (пример на скриншоте), затем перейти по нему нажатием на кнопку Enter. Откроется страница, на которой в левом верхнем углу отобразится версия PHP.
Просмотр версии PHP на сайте хостинга
Можно узнать версию PHP на хостинге TimeWeb, причем не просто посмотреть, но и изменить ее. Открываем в панели управления раздел «Сайты». По сути все, версию узнали, но не так подробно, как хотелось бы (сравните с другими примерами).
Дальше можно нажать на зеленую иконку с изображением шестеренки и тем самым перейти в настройки. Откроется новое окошко, где можно выбрать версию PHP и Python.