インフラ

php 7.x系のインストール方法

更新日

PHPと関連モジュールのインストール

dnfの部分は、CentOS7以前ならyum、Ubuntu系ならapt-getを使って下さい

OS付属のPHPのインストール

sudo dnf -y install php;
sudo yum -y install php-bcmath php-cli php-curl php-devel php-fpm php-gd php-json php-ldap php-mbstring php-mysqlnd php-xml php-odbc php-opcache php-pdo php-pear php-soap php-xml php-xmlrpc php-zip;

PHP公式配布のPHPインストール

一般的にOS付属のPHPよりも新しい版が提供されます。

# CentO8の場合。OS・バージョンによって異なるので、詳しくはhttp://rpms.remirepo.net/enterprise/を見て自分の環境に該当するものを見つけて下さい #
# インストール対象は2020/01現在最新のPHP7.4の場合 #
OSVER=8;
PHPVER=74;
sudo dnf -y install http://rpms.remirepo.net/enterprise/remi-release-$OSVER.rpm;
sudo dnf -y install epel-release yum-utils;
sudo dnf config-manager --set-enabled PowerTools;
sudo dnf -y install php$PHPVER*;
sudo yum -y install php$PHPVER-php-bcmath php$PHPVER-php-cli php$PHPVER-php-curl php$PHPVER-php-devel php$PHPVER-php-fpm php$PHPVER-php-gd php$PHPVER-php-json php$PHPVER-php-ldap php$PHPVER-php-mbstring php$PHPVER-php-mysqlnd php$PHPVER-php-xml php$PHPVER-php-odbc php$PHPVER-php-opcache php$PHPVER-php-pdo php$PHPVER-php-pear php$PHPVER-php-soap php$PHPVER-php-xml php$PHPVER-php-xmlrpc php$PHPVER-php-zip;

PHPVER=74;
sudo update-alternatives \
--install /usr/bin/php                       php     /opt/remi/php$PHPVER/root/usr/bin/php   0    \
--slave   /usr/bin/php-cgi                   php-cgi /opt/remi/php$PHPVER/root/usr/bin/php-cgi   \
--slave   /usr/bin/pear                      pear    /opt/remi/php$PHPVER/root/usr/bin/pear      \
--slave   /usr/bin/phar.phar                 phar    /opt/remi/php$PHPVER/root/usr/bin/phar.phar;

なお上記の方法でupdate-alternativesを複数のバージョンに対してやっている場合

sudo alternatives --config php;

で、PHPの複数のバージョンの切り替えを行う事が出来る。


composerのインストール

sudo dnf -y install composer;

もしもcomposerがOS側からパッケージとして提供されてなければ
https://getcomposer.org/download/
手順にそってインストール
2020/01現在書いてある手順だと

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('sha384', 'composer-setup.php') === 'c5b9b6d368201a9db6f74e2611495f369991b72d9c8cbd3ffbc63edff210eb73d46ffbfce88669ad33695ef77dc76976') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');";

# /usr/local/bin にパスが通っていれば使える様にする #
mv composer.phar /usr/local/bin/;
php -v;

と打って、PHPのバージョンを確認

PHP 7.4.2 (cli) (built: Jan 21 2020 11:35:20) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
    with Zend OPcache v7.4.2, Copyright (c), by Zend Technologies

それでPHP7系が正常にインストールされている事を確認する。