web-dev-qa-db-ja.com

PEARとComposerの違いは何ですか?

[〜#〜] pear [〜#〜] はPHPソフトウェアパッケージをインストールするために使用され、 Composer は同じものに使用されますComposerは依存関係をより適切に処理しますが、それが唯一の違いですか?これら2つのパッケージマネージャーの違いを説明して、いつ使用するかを教えてもらえますか?

30
SohelAhmedM

PEARを非推奨とみなすのはもうすぐかもしれませんが、そうなるまでに時間がかかるとは思いません。 Composerは活発で成熟しており、多くのパッケージと活発な開発が行われています。したがって、Composerを パッケージの標準 PHPの管理ツールとして使用することをお勧めします。

PEARを使用することは、パッケージメンテナーにとってより面倒です。したがって、PEARの多くのコードは古くなっています。開発者は、PEARで公開される前にパッケージを「PEARレビュー済み」にする必要があるため、パッケージの数と比較して使用可能なパッケージはほとんどありません Composerで使用可能 。また、1つのプロジェクトのパッケージをPEARにインストールする方法はありません。すべてのパッケージはグローバルにインストールされます。 Composerを使用すると、パッケージをプロジェクトごとにインストールできますまたはグローバル。それから、PEARには依存関係管理の欠如があります。これは率直に言って、パッケージマネージャーがうまくやることの1つです。

PEARではなくComposerで can することの1つは、インストール PECL拡張機能 です。ただし、 pickle があり、Composerを使用し、composer.jsonファイルでネイティブPHP拡張の依存関係を定義できます。 pickleプロジェクトは一時的にかなりの開発段階にあり、まだ成熟しているとは見なされません。

このブログ投稿 Fabien Potencier氏は少し意見を述べるかもしれませんが、それはかなり正しいと思います。オプションがある場合は、Composerを選択して、PEARが安心して死ぬようにします。 PEARメンテナーに尋ねる ほとんどの場合、Composer_が今後の道のりであることがわかりますが、 Pyrus 。 (これはPEARを改良することを目的としていましたが、Composerの爆発的な人気に少し埋もれてしまいました。)

ところで、Composerを使用してPEARパッケージもインストールできます。 the Composer documentation を参照してください。

以下も参照してください:
[1] PHPパッケージ管理に関する有益なスライドデッキ

42
Xatoo