====== Composer ====== --- //[[http://www.y2sunlight.com|y2sunlight]] 2020-03-08//
{{https://getcomposer.org/img/logo-composer-transparent3.png?100}}\\ [[https://github.com/composer/composer/blob/master/LICENSE|MIT License]]
ComposerはPHPプログラミング言語向けのパッケージ管理システムです。マルチプラットフォームのオープンソース(MIT License)で、 Nils AdermannとJordi Boggianoにより2012年3月1日に初版がリリースされて以来、活発に更新されています。 Composerを機能の一部として利用しているPHPのフレームワークには以下のものがある。(筆者の興味があるものだけを挙げる) * [[https://laravel.com/|Laravel]] --- Version 4 以降 * [[https://symfony.com/|Symfony]] --- Version 2 以降 * [[https://cakephp.org/jp|CakePHP]] --- Version 3.0 以降 * [[https://fuelphp.com/|FuelPHP]] --- Version 2.0 以降 > Composerサイトの[[https://getcomposer.org/doc/00-intro.md|イントロダクション]]の冒頭では次のように書いてあります。「ComposerはPHPの依存性管理ツールです」と。なので「パッケージ管理システム」と呼ぶと怒られそうですがまぁそれはそれとして... === Composerの必要性と特徴 === 一般にプログラム開発ではさまざまな外部のライブラリ(環境設定、ログ出力、ORマッパー、Viewテンプレート、URLルーティング等)を使用しているので、それらパッケージ間の依存性を解決してそれをプロジェクトメンバーで共有できるパッケージ管理システムが必要になります。Composerでは、パッケージ間の依存定義ファイル(composer.json)に従いパッケージの公式サイトからzipファイルをダウンロードし、ローカルに展開します。この依存定義ファイルさえ共有すればメンバー同士で同じライブラリの共有が可能になります。 また、Composerはパッケージ管理の機能以外に、オートロードという機能も持っています。この機能を使えばライブラリに対する個々のrequire文を使用しなくてもライブラリを読み込むことができます。composerを使用してライブラリをインストールすることで、autoload.phpというファイルが生成され、このファイルさえrequireすればライブラリのオートロードができ、開発効率が大きくに向上します。 リンク * [[https://getcomposer.org/]] --- Composer の本家 * [[https://getcomposer.org/doc/]] --- Composer ドキュメント(英語) ===== 目次 ===== インストール * [[composer:1.9:install|Composerのインストール]] * [[composer:1.9:phpswitch|ComposerをPHPバージョンで使い分ける]] * [[composer:1.10:local-install|Composerのローカルインストール]] 使い方 * [[composer:1.9:basic-usage|Composer 基本的な使い方]] * [[composer:1.9:command-list|Composer コマンド一覧]] * [[composer:1.9:version-constraints|Composer バージョン制約]] \\