Composer
表示
出典: フリー百科事典『ウィキペディア(Wikipedia)』
開発元 |
Nils Adermann, Jordi Boggiano |
---|---|
最新版 | |
リポジトリ | ウィキデータを編集 |
プログラミング 言語 | PHP |
対応OS | クロスプラットフォーム |
サポート状況 | 活発 |
種別 | パッケージ管理システム |
ライセンス | MIT License |
公式サイト |
getcomposer |
テンプレートを表示 |
Composerは、PHP プログラミング言語向けのソフトウェアおよび必要なライブラリの依存関係を管理する標準形式を提供するアプリケーションレベルのパッケージ管理システムである。 Nils AdermannとJordi Boggianoにより開発され、現在も両氏によってプロジェクトの管理が継続されている。両氏は2011年4月に開発を開始し、2012年3月1日に初めてリリースされた[2] 。Node.jsのnpmおよびRubyのbundler (英語版)から強い影響を受けている[3] 。
コマンドライン上で動作し、アプリケーションが依存するライブラリなどをインストールする。 また、利用可能なパッケージを含んでいるメインリポジトリ『Packagist』[4] で利用可能なPHPアプリケーションをインストールすることも可能であるほか、ライブラリ向けにサードパーティーのコードを容易に利用出来るオートロード情報を指定できる機能も提供されている。
また、Laravelを含めた有名なオープンソースのPHPプロジェクトの重要な機能の一部として利用されている[5] 。
Composerに対応するフレームワーク
[編集 ]- Symfony バージョン 2 以降
- Laravel バージョン 4 以降
- CodeIgniter バージョン 3.0 以降
- CakePHP バージョン 3.0 以降
- FuelPHP バージョン 2.0 以降
- Drupal バージョン 8 以降
- Silex
composer.json
[編集 ]Composerでクラスのオートローディングなどをするためには composer.json というファイルを記述しなければならない。以下の示すcomposer.jsonはPHPのPHP-FIGが提供しているコーディング規約「PSR-4」に準じたオートローディングをするためのファイルである。ユーザーは MyAppという名前空間を使ってコーディングしなければならない。
{ "autoload":{ "psr-4":{ "MyApp\\":"folder/" } } }
以下はサンプルコードである。
<?php namespace MyApp; class ClassName { .. }
脚注
[編集 ][脚注の使い方]
- ^ "Release · composer/composer · GitHub". 2024年1月3日閲覧。
- ^ Software CHANGELOG, github.com, Retrieved November 28, 2013.
- ^ Getting Started/Dependency management, getcomposer.org, Retrieved November 28, 2013.
- ^ See packagist.org
- ^ Maks Surguy (7月27日2013年). "History of Laravel PHP framework, Eloquence emerging". maxoffsky.com. 5月10日2015年閲覧。