본문 바로가기
기술

Composer PHP 패키지 관리 및 사용법

by 해피스트 2025. 3. 15.

PHP 개발할 때 유용한 Composer 라는 툴이 있다. 

한국에서는 중대형 프로젝트에 PHP를 사용하지 않지만 해외에서는 많이 사용하고, 국내도 중소기업에서 간혹 사용하는 것 같다. 

Composer가 무엇인지, 어떻게 사용하는지 알아본다.

  1. Composer PHP 패키지 관리
  2. PHP 의존성 관리 도구 Composer 사용법

Composer: PHP의 의존성 관리 도구

1. Composer란?

Composer는 PHP의 패키지 및 라이브러리를 관리하는 의존성 관리 도구(Dependency Manager)다.
프로젝트에서 필요한 외부 라이브러리를 쉽게 설치하고 자동으로 버전을 관리할 수 있도록 도와준다.


2. Composer의 주요 기능

  • 패키지 관리: 프로젝트에서 사용할 외부 라이브러리 설치 및 제거
  • 자동 의존성 해결: 설치된 라이브러리의 종속 패키지까지 자동 관리
  • 버전 관리: 특정 버전의 패키지 고정 및 업데이트 가능
  • 전역(Global) 및 로컬(Local) 패키지 관리: 프로젝트별 또는 시스템 전체에서 Composer 사용 가능

3. Composer 설치 방법

① Composer 다운로드 및 설치 (Windows)

  1. 공식 Composer 다운로드 페이지에서 Windows Installer 다운로드
  2. 설치 실행 후 PHP 경로 설정 (이미 PHP가 설치되어 있어야 함)
  3. cmd 또는 PowerShell에서 composer 명령어 실행하여 정상적으로 설치 확인

② Composer 설치 (Linux & macOS)
터미널에서 다음 명령어 실행:

curl -sS https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer

 

설치 확인:

composer --version

4. Composer 기본 사용법

① 프로젝트에 Composer 초기화 (composer.json 생성)

composer init
  • 프로젝트 정보를 입력하면 composer.json 파일이 생성됨
  • 이 파일은 프로젝트에서 사용할 패키지 정보를 저장

② 패키지 설치 (require)

composer require vendor/package-name

 

예제: Laravel 설치

composer require laravel/laravel
  • 설치된 패키지는 vendor/ 폴더에 저장됨
  • composer.json과 composer.lock 파일이 업데이트됨

③ 패키지 업데이트

composer update
  • 모든 패키지를 최신 버전으로 업데이트

④ 특정 패키지 업데이트

composer update vendor/package-name

 

⑤ 패키지 제거 (remove)

composer remove vendor/package-name

5. Autoload 기능

Composer는 자동 로딩을 제공하여 require 없이 클래스를 쉽게 사용할 수 있다. 
autoload.php를 로드하여 패키지 클래스 사용 가능:

require 'vendor/autoload.php';

 

이후 설치된 패키지의 클래스 호출 가능:

use Carbon\Carbon;

echo Carbon::now();  // 현재 날짜 및 시간 출력

6. Composer를 사용하는 PHP 프레임워크 및 라이브러리 예시

  • Laravel (PHP 프레임워크)
  • Symfony (PHP 프레임워크)
  • PHPUnit (테스트 프레임워크)
  • Monolog (로깅 라이브러리)
  • Guzzle (HTTP 클라이언트)

7. Composer의 장점

의존성 자동 관리 → 패키지 간의 의존성을 자동으로 해결
버전 관리 → 최신 버전 유지 및 특정 버전 고정 가능
프로젝트 격리 가능 → 글로벌 환경과 충돌 없이 프로젝트별 독립적 패키지 관리
PSR-4 자동 로딩 지원 → 클래스 자동 로딩으로 코드 간결화


8. 결론

Composer는 PHP 개발에서 필수적인 패키지 및 의존성 관리 도구, 
PHP 프로젝트를 효율적으로 관리하려면 Composer를 활용하는 것이 필수적이며, Laravel, Symfony 등 최신 PHP 프레임워크에서도 기본적으로 사용된다. 

 

Composer PHP 패키지 관리 및 의존성 관리 도구

 

반응형

댓글