컴포저 (소프트웨어)

컴포저(Composer)는 PHP 소프트웨어와 필요 라이브러리의 의존성을 관리하기 위한 표준 포맷을 제공하는 PHP 프로그래밍 언어의 패키지 관리자이다. Nils Adermann, Jordi Boggiano가 이 프로젝트를 개발하였으며 지금도 이 프로젝트의 관리를 계속하고 있다. 2011년 4월 개발을 시작하여 2012년 3월 1일 처음 출시했다.Software release, github.com, Retrieved April 24, 2016. 컴포저는 Node.js의 npm과 루비의 번들러로부터 상당한 영향을 받았다.Getting Started/Dependency management, getcomposer.org, Retrieved November 28, 2013. 이 프로젝트의 의존성 해결 알고리즘은 오픈수세의 libzypp satsolver의 PHP 기반 포팅으로 시작하였다.Composer acknowledgements

컴포저는 명령 줄을 통해 실행되며 애플리케이션을 위한 의존성(예: 라이브러리)을 설치한다. 또, 사용자들은 사용 가능한 패키지를 주요 저장소인 "Packagist"에서 PHP 애플리케이션을 설치할 수 있다.See packagist.org  PSR-4 구현에 따라 라이브러리를 위한 오토로드 기능도 제공하므로 서드파티 코드를 사용하기가 쉽다.

 문법 
 명령어 
컴포저는 여러 변수를 제공한다:
 require: composer.json 파일의 변수에 라이브러리를 추가하고 설치한다.
 install: composer.json으로부터 모든 라이브러리를 설치한다. 모든 PHP 저장소 의존성을 다운로드하기 위해 사용되는 명령어이다.
 update: composer.json으로부터 모든 라이브러리를 업데이트하며, 이는 언급되는 허용 버전에 따른다.
 remove: 라이브러리의 설치 제거를 수행하고 composer.json으로부터 이를 제거한다.
 audit: 설치된 패키지들이 보안이 취약한 버전인지 알려준다.

 라이브러리 정의 
다음의 명령어로 생성되는 composer.json의 예:
 composer require monolog/monolog

{
    "require": {
        "monolog/monolog": "1.2.*"
    }
}

 컴포저를 도입한 프레임워크들 

 심포니 버전 2 이상
 라라벨 버전 4 이상
 코드이그나이터 버전 3.0 이상
 CakePHP 버전 3.0 이상
 FuelPHP 버전 2.0 이상
 드루팔 버전 8 이상
 TYPO3 버전 6.2 이상
 SilverStripe 버전 3.0 이상
 마젠토 버전 2.0 이상
 Yii 버전 1.1 이상
 젠드 프레임워크 버전 1 이상
 Silex
 Lumen

 같이 보기 
 PEAR

 각주 

 외부 링크 


 Composer on GitHub
 Composer documentation
 Composer Tutorial 
 Automate basic composer tasks in Laravel 
 Packagist - the main Composer repository


분류:자유 패키지 관리 시스템
분류:PHP로 작성된 자유 소프트웨어
분류:PHP 소프트웨어