PHP7 вышел относительно недавно в декабре 2015 года. К основным достоинствам относится его высокая производительность (на картинке ниже) и отличная совместимость с ngix. Помимо прочего имеется следующие изменения:
- Improved performance: PHP 7 is up to twice as fast as PHP 5.6
- Significantly reduced memory usage
- Abstract Syntax Tree
- Consistent 64-bit support
- Improved Exception hierarchy
- Many fatal errors converted to Exceptions
- Secure random number generator
- Removed old and unsupported SAPIs and extensions
- The null coalescing operator (??)
- Return and Scalar Type Declarations
- Anonymous Classes
- Zero cost asserts
Сейчас рассмотрим установку на CentOS 6/7/RHEL (в моем случае использовался CentOS 6.5 64bit). Будем использовать Webtatic repo.
Шаг 1 – Заходим на наш сервер CentOS с правами root.
Шаг 2 – Выполняем обновление системы:
1 | yum update -y |
Шаг 3 (опционально) – устанавливаем Apache 2 web server (httpd):
1 | yum install httpd -y |
Шаг 4 – Добавляем репозиторий webtatic repository для CentOS 7.x:
1 2 | rpm -Uvh https: //dl .fedoraproject.org /pub/epel/epel-release-latest-7 .noarch.rpm rpm -Uvh https: //mirror .webtatic.com /yum/el7/webtatic-release .rpm |
Для более ранней версии CentOS 6.x используется другой репозиторий:
1 | rpm -Uvh https: //mirror .webtatic.com /yum/el6/latest .rpm |
Шаг 5 – устанавливаем PHP 7:
1 | yum install php70w |
Либо устанавливаем все пакеты:
1 | yum install php70w-cli php70w-common php70w-bcmath php70w-dba php70w-devel php70w-embedded php70w-fpm php70w-gd php70w-imap php70w-interbase php70w-intl php70w-ldap php70w-mbstring php70w-mcrypt php70w-mysql php70w-odbc php70w-opcache php70w-pdo php70w-pdo_dblib php70w-pear php70w-process php70w-pspell php70w-recode php70w-tidy php70w-xml php70w-xmlrpc |
Готово! Установка PHP 7 в CentOS 6.5 / 7 завершена.
Проверить версию php можно следующей командой:
php -v
у меня не получается пишет вот что
No match for argument: php70w-cli
No match for argument: php70w-common
No match for argument: php70w-bcmath
No match for argument: php70w-dba
No match for argument: php70w-devel
No match for argument: php70w-embedded
No match for argument: php70w-fpm
No match for argument: php70w-gd
No match for argument: php70w-intl
No match for argument: php70w-ldap
No match for argument: php70w-mbstring
No match for argument: php70w-odbc
No match for argument: php70w-opcache
No match for argument: php70w-pdo
No match for argument: php70w-pear
No match for argument: php70w-process
No match for argument: php70w-recode
No match for argument: php70w-xml
No match for argument: php70w-xmlrpc
и что с этим делать?
Лучше ставить из репозитория remi там пакеты называются по человечески без приставки “w”