[PHP]Composerの依存性チェックでphpバージョンエラーを一時的に回避する(--ignore-platform-reqs)

カテゴリ: composer

Composerでは、composer.jsonファイルへrequireを記載することで、他のパッケージへの依存性を規定することができます。これにより、インストールされていることが前提となるパッケージを自動でインストールしたり、逆に正しく動作しない環境へ誤ってパッケージがインストールされることを防ぐことができます。

今回は、Composerによるパッケージのphpバージョンチェックを一時的に回避する方法について説明します。

composer.jsonでは、phpバージョンのチェックも行える

requireによる依存性のチェックは、パッケージだけでなくphpの環境自体に対してもチェックができます。
環境というのは、phpのバージョンや、php.iniで必要なextensionがロードされているか等です。

たとえば、パッケージがインストールされる環境のphpバージョンが5.4か7.0台であることを指定するなら、以下のような定義を行います。

"require": {
    "php": "^5.4|^7.0"
},

phpバージョンのチェックを一時的に回避するには

このチェック機構は非常に便利なのですが、新しいバージョンのPHPでどの程度動作するか(or 動作しないか)を確認したり、敢えて古いバージョンや動作確認を行いたい場合に、このチェック機構を迂回したい場合があります。

このような場合は、以下のようにcomposer requireに--ignore-platform-reqsオプションをつけることでチェックを迂回できます。

composer require xxxx/xxxx --ignore-platform-reqs
composer install --ignore-platform-reqs

インストールはできますが、パッケージ作者が意図しない環境での動作を行っているため、予期せぬ不具合が発生する可能性は高いです。
実際に使用する時は、危険性があることを意識した十分な評価が必要です。


Amazonでおトクに買い物する方法
AmazonチャージでポイントGET


Amazonは買いもの前にAmazonギフト券をチャージしてポイントをゲットしないと損!

こちらもおススメ

コメントを残す

メールアドレスが公開されることはありません。