Composer

Composer
開発元 Nils Adermann,
Jordi Boggiano
最新版
2.8.6 / 2025年2月25日 (2025-02-25)[1]
リポジトリ
プログラミング
言語
PHP
対応OS クロスプラットフォーム
サポート状況 活発
種別 パッケージ管理システム
ライセンス MITライセンス
公式サイト getcomposer.org

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に対応するフレームワーク

composer.json

Composerでクラスのオートローディングなどをするためには composer.json というファイルを記述しなければならない。以下の示すcomposer.jsonはPHPのPHP-FIGが提供しているコーディング規約「PSR-4」に準じたオートローディングをするためのファイルである。ユーザーは MyAppという名前空間を使ってコーディングしなければならない。

{
	"autoload" : {
		"psr-4" : {
			"MyApp\\" : "folder/"
		}
	}
}

以下はサンプルコードである。

<?php

namespace MyApp;

class ClassName
{ 
    ..
}

脚注

  1. ↑ “Release 2.8.6 · composer/composer”. 2025年3月2日閲覧。
  2. ↑ Software CHANGELOG, github.com, Retrieved November 28, 2013.
  3. ↑ Getting Started/Dependency management, getcomposer.org, Retrieved November 28, 2013.
  4. ↑ See packagist.org
  5. ↑ Maks Surguy (2013年7月27日). “History of Laravel PHP framework, Eloquence emerging”. maxoffsky.com. 2015年5月10日閲覧。

外部リンク