Composer

曖昧さ回避 この項目では、PHP向けのパッケージ管理システムについて説明しています。その他の用法については「コンポーザー」をご覧ください。
Composer
開発元 Nils Adermann,
Jordi Boggiano
最新版
2.6.6 / 2023年12月9日 (4か月前) (2023-12-09)[1]
リポジトリ
  • github.com/composer/composer
ウィキデータを編集
プログラミング
言語
PHP
対応OS クロスプラットフォーム
サポート状況 活発
種別 パッケージ管理システム
ライセンス MIT License
公式サイト getcomposer.org
テンプレートを表示

Composerは、PHPプログラミング言語向けのソフトウェアおよび必要なライブラリの依存関係を管理する標準形式を提供するアプリケーションレベルのパッケージ管理システムである。 Nils AdermannとJordi Boggianoにより開発され、現在も両氏によってプロジェクトの管理が継続されている。両氏は2011年4月に開発を開始し、2012年3月1日に初めてリリースされた[2]Node.jsのnpmおよびRubybundler(英語版)から強い影響を受けている[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 · composer/composer · GitHub”. 2024年1月3日閲覧。
  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 (7月27日2013年). “History of Laravel PHP framework, Eloquence emerging”. maxoffsky.com. 5月10日2015年閲覧。

外部リンク

  • 公式ウェブサイト
  • Composer on GitHub
  • Composer documentation
  • Composer Tutorial
  • Packagist - the main Composer repository
  • Composer - Open Hub
パッケージ形式(英語版)
 
コンパイルされているパッケージ(実行ファイル
Windows
macOS
Unix系
dpkg
RPM
tar
  • slapt-get(英語版)
  • slackpkg(英語版)
  • netpkg
  • Swaret(英語版)
その他
Solaris
  • IPS(英語版)
  • Pkgutil
z/OS
  • SMP/E(英語版)
組み込みOS
モバイルOS
ゲーム機
クロスプラットフォーム
ウェブブラウザ
 
コンパイルされていないパッケージ(ソースコード
Linux
macOS
BSD
 
  • 一覧記事 リスト
  • カテゴリ カテゴリ
  • コモンズ コモンズ