この項目では、PHP向けのパッケージ管理システムについて説明しています。その他の用法については「コンポーザー」をご覧ください。
Composer
開発元Nils Adermann,
Jordi Boggiano
最新版2.6.6 / 2023年12月9日 (5か月前) (2023-12-09)[1]
リポジトリ
github.com/composer/composer
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.jsonはPHPのPHP-FIGが提供しているコーディング規約「PSR-4」に準じたオートローディングをするためのファイルである。ユーザーは MyAppという名前空間を使ってコーディングしなければならない。{ "autoload" : { "psr-4" : { "MyApp\\" : "folder/" } }} 以下はサンプルコードである。<?phpnamespace MyApp;class ClassName{ ..}
Composerに対応するフレームワーク
Symfony バージョン 2 以降
Laravel バージョン 4 以降
CodeIgniter バージョン 3.0 以降
CakePHP バージョン 3.0 以降
FuelPHP バージョン 2.0 以降
Drupal バージョン 8 以降
Silex
composer.json
脚注[脚注の使い方]^ “Release ・ composer/composer ・ GitHub
^ 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年閲覧。
外部リンク
公式ウェブサイト
Composer on GitHub
Composer documentation
⇒Composer Tutorial
Packagist - the main Composer repository
Composer - Open Hub
表
話
編
歴
PHP
実装
Zend Engine(公式)
HHVM
Parrot
Phalanger
ライブラリ
PDO
PEAR
PECL
PHPUnit
Standard PHP Library
Composer
フレームワーク
CakePHP
CodeIgniter
Drupal
eZ Publish
FuelPHP
Joomla!
Laravel
MODX
NetCommons
PRADO
Symfony
TYPO3
WordPress
XOOPS
Yii
Zend Framework
Silex
IDE
Aptana
Eclipse PDT
NetBeans
RadPHP
Zend Studio(英語版)
PhpStorm
人物
アンディ・ガトマンズ
ゼーブ・スラスキー
ラスマス・ラードフ
その他
PHP License
Hack
LAMP
WampServer
XAMPP
カテゴリ
コモンズ
表
話
編
歴
パッケージ管理システム
パッケージ形式(英語版)
Windows
Allmyapps(英語版)
Cygwin
Microsoftストア
Npackd
NSIS
ProGet
wpkg
macOS
Mac App Store
Unix系
dpkg
APT
aptitude
dselect(英語版)
Ubuntuソフトウェアセンター
RPM
YUM
DNF
APT-RPM(英語版)
up2date(英語版)
urpmi
Zypper
tar
slapt-get(英語版)
slackpkg(英語版)
netpkg
Swaret(英語版)
その他
AppImage
Autopackage(英語版)
Conary
Flatpak
Nix