PHP 7をインストールすると、yumはPHP v5.4パッケージをインストールします。

PHP 7をインストールすると、yumはPHP v5.4パッケージをインストールします。

CentOにPHPバージョン7をインストールしました。

これで、次のエラーが発生します。

未定義関数 mb_internal_encoding()

そのため、php-mbstringをインストールすることにしましたが(使用yum install php-mbstring)、次のエラーが発生しました。

エラー:php70u-commonがphp-common-5.4.16-43.el7_4.x86_64と競合しています。

エラー:php70u-jsonがphp-common-5.4.16-43.el7_4.x86_64と競合しています。

しかし、今php-mbstringをインストールしたら、php-mbstringバージョン5.4をインストールしようとしています。

最新バージョンのPHP拡張機能とパッケージをダウンロードするようにyumにどのように指示しますか?

答え1

システムにすでにインストールされているため、php5競合がphp7発生します。使用している場合は、php7次を使用して別のバージョンを削除します。

yum remove php-*

php7以前のバージョンを完全に削除したら、必要なパッケージのみをインストールしてください。複数のバージョンをインストールする必要がある場合は、phpGoogleで特定のプロセスを検索してください。あまり簡単ではありません。

ノートワイルドカードを使用してソフトウェアをアンインストールする場合は、続行するyum前にアンインストールする項目を確認することを忘れないでください。

答え2

これを実行してください:

yum remove php php-cli php-common php-gd php-ldap php-mysql php-odbc php-pdo php-pear php-pecl-apc php-pecl-memcache php-pgsql php-soap php-xml php-xmlrpc -y

今走るyum install php-mbstring

これが役に立ちます。

答え3

システムに公式のcentos php(5.4)と最新バージョンの両方をインストールする必要がある場合、IUSリポジトリはcentos / epelリポジトリよりも新しいバージョンのパッケージを提供し、別の命名(例:php56u、php70u ...)を使用して競合する防止します。

iusリポジトリの使用方法については後述する。https://ius.io/GettingStarted/

関連情報