XServer(新サーバーパネル)でPHPのバージョンを変更するには、
- サーバーパネルのメニューから「PHP」を開く
- 「PHP Ver.切替」をクリック
- バージョンを変更したいドメインの「編集」をクリック
- 変更したいバージョンをプルダウンから選び、「設定する」をクリック
という手順で超簡単にできます。(変更手順詳細は公式サイト こちら にて)
しかし注意が必要なのは、この手順で変更されるのはWebサーバーのPHPバージョン(ブラウザで動作するPHPスクリプト)であり、SSHで使用するCLI(コマンドラインインターフェース)のPHPバージョンは別々に設定されているという点です。このため、CLIでコマンドを実行すると以下のようなエラーが発生する場合があります。
コマンド実行時のエラーメッセージの例
composer detected issues in your platform:
Your Composer dependencies require a PHP version ">= 8.1.0". You are running 7.4.33.
PHP Fatal error: Composer detected issues in your platform: Your Composer dependencies require a PHP version ">= 8.1.0". You are running 7.4.33. in /home/~~~~~~~~~~~~~~
このエラーは、CLIで使用しているPHPのバージョンが依存関係の要件(PHP 8.1以上)を満たしていないために発生しており、サーバーパネルでPHPバージョンを変更しても反映されません。(同じエラーが表示されてしまいます。)
これは前述の通り、サーバーパネル上でのバージョン変更はWebサーバー(ブラウザで動作するPHPスクリプト)のみが対象で、CLIのPHPバージョンには反映されないためです。
従って、エラーを回避してコマンドを実行するには、CLIで適切なPHPバージョンを指定して実行する必要があります。
なお、現在使用しているPHPのバージョンは以下のコマンドで確認できます。
php -v
適切なPHPバージョンを指定してコマンドを実行する方法
find /usr -name php* | grep bin
というコマンドを実行すると、指定できるPHPのバージョン一覧が表示されます。
一覧から依存関係が求めるバージョン(上記エラーメッセージの場合: PHP 8.1以上)を選び、フルパスを指定してコマンドを実行してください。
例)PHPのバージョン(php8.3)を指定して、EC-CUBEのキャッシュをクリアするコマンドを実行した場合
/usr/bin/php8.3 bin/console cache:clear --no-warmup
これでエラーを回避して実行できるはずです。