composer install でエラー、PHPのバージョンの違い(エックスサーバ)
エックスサーバで、composer installする時、以下のようなエラーが出た。
Loading composer repositories with package information
Installing dependencies (including require-dev) from lock file
Your requirements could not be resolved to an installable set of packages.
ローカルの開発環境と、サーバのPHPのバージョンが違うと、このようなエラーが出るようです。
バージョンの確認
ローカルのPHPのバージョンは7.x系。
あれ?エックスサーバのPHPのバージョンも7.x系のはず。。。
エックスサーバのコントロールパネルで確認すると、7.x系となっている。(ハテ?)
エックスサーバはどうやら、ターミナルから使えるPHPのバージョンと、ホームページ上で動くPHPのバージョンとは別のようです。
エックスサーバにターミナルで接続して、PHPのバージョンを確認してみる。
バージョンの確認コマンド
$ php -v
すると、5.x系でした。。。
バージョンの変更
ターミナルから使えるPHPのバージョンを変更します。
バージョン一覧を表示
$ find /opt/php-*/bin -type f -name 'php'
使用可能なバージョンのリストが表示されるので、使いたいバージョンを確認します。
今回は、7.3.8を使用します。
バージョンを選択
# フォルダ作成
$ mkdir $HOME/bin
# シンボリックリンク作成
$ ln -s /opt/php-7.3.8/bin/php $HOME/bin/php
パスを通す
#バックアップ(必要な場合)
$ cp ~/.bashrc ~/.bashrc.bk
#bashrcファイルを開く
$ vi ~/.bashrc
############ここからVimコマンド############
#インサートモードにする
i
#末尾などに以下を追記
export PATH=$HOME/bin:$PATH
#コマンドモードに戻す
「ESC」キー
#保存して閉じる
:wq
############ここまでVimコマンド############
#更新
$ source ~/.bashrc
確認
$ php -v
PHP7.3.8・・・と表示されていれば成功!