PHP 로컬 설치

내 컴퓨터에서 Exercism의 연습 문제를 풀 수 있도록 PHP를 로컬에 설치하는 방법을 배워요


어떤 버전을 선택할까요?

지원이 활발한 안정적인 PHP 릴리스를 사용하는 걸 권장해요. 현재는 PHP 8.2, 8.3, 8.4예요. 현재 릴리스와 지원 일정에 대한 자세한 내용은 PHP 공식 문서에서 확인할 수 있어요.

PHP 설치

Linux와 macOS의 대부분의 패키지 관리자는 미리 빌드된 패키지를 제공해요. PHP는 소스에서 내려받아 빌드할 수도 있는데, php.net/downloads.php나 windows.php.net/download에서 받을 수 있어요.

Note

연습 문제를 푸는 데 nginx나 Apache HTTP server 같은 웹 서버는 필요하지 않아요.

Linux

배포판마다 설치 방법이 달라요. 다음 명령을 실행할 수 있을 거예요.

yum install php

또는

apt-get install php

사용하는 패키지 관리자에 따라 달라요.

더 자세한 내용은 PHP 매뉴얼의 유닉스 시스템 설치를 참고해요.

macOS

macOS에는 PHP가 기본으로 포함된 경우가 많지만, 대개 오래된 버전이에요. PHP는 Homebrew로 설치하는 걸 권장해요. Homebrew 설치는 홈페이지의 안내를 따라 하면 돼요.

설치를 확인하려면 다음 명령을 실행해 봐요. 이 글을 쓰는 시점에는 Homebrew 4.5.x가 출력될 거예요.

brew --version 

Homebrew로 PHP를 설치해요.

brew install php@8.4

이 명령은 현재 설치된 PHP 버전을 보여줘요. 최소 8.2.0 이상이어야 해요.

php -v

더 자세한 내용은 매뉴얼의 macOS 설치를 참고해요.

Windows

Windows용 공식 PHP 바이너리는 windows.php.net/download에서 내려받을 수 있어요.

미리 구성된 스택으로 WAMP (Windows, Apache, MySQL, PHP)와 XAMPP도 있어요.

더 자세한 내용은 매뉴얼의 Windows 시스템 설치를 참고해요.

Docker

컨테이너 환경을 선호한다면 Docker Hub의 공식 PHP 이미지를 내려받을 수 있어요. Docker도 필요해요.

기타

다른 운영체제를 사용하려면 php.net/manual/en/install의 안내를 참고해요.

PHPUnit 설치

Note

PHPUnit 12는 아직 지원하지 않아요!

PHP 아카이브(PHAR) 사용

Exercism 연습 문제에서 PHPUnit을 사용하는 가장 쉬운 방법은 PHP 아카이브(PHAR)로 패키징된 배포판을 내려받는 거예요. 이 방법이 PHPUnit을 사용하는 권장 방식이기도 해요. PHAR 파일은 exercism CLI를 저장한 곳에 두면 어디서든 PHPUnit을 실행할 수 있어요.

PHPUnit 패키지 릴리스를 PHP 아카이브로 내려받을 수 있어요.

wget -O phpunit.phar https://phar.phpunit.de/phpunit-11.phar

그다음 내려받은 파일에 실행 권한을 부여해요.

chmod +x phpunit.phar

그리고 exercism CLI를 옮긴 것과 같은 위치로 옮기면서 명령 이름을 phpunit으로 지정해요.

mv phpunit.phar ~/bin/phpunit

이제 PHP 트랙 테스트 문서에 나온 것처럼 어디서든 phpunit을 실행할 수 있어요.

phpunit --version

출력은 다음과 같아요.

PHPUnit 11.5.45 by Sebastian Bergmann and contributors.

공식 PHPUnit 설치 안내를 따라 PHPUnit을 설치할 수도 있어요.

Composer 사용

PHPUnit 11은 Composer로도 설치할 수 있어요.

Composer 설치

사용하는 기기의 운영체제에 맞는 설치 안내를 따라 Composer를 설치해요. 사용하기 편하도록 전역으로 설치하는 걸 권장해요.

PHPUnit을 전역 도구로 추가

다음 명령을 사용해요.

composer global require phpunit/phpunit ^11.5

11.5 이상 버전을 설치해야 해요.

사용 가능한 모듈