로그인 회원가입
모두인포
전체IT경제사회생활스포츠시사여행연애

PHP 라이브러리와 확장기능(Extension)

lmkfox · 2025-08-02 · 조회 0
PHP 라이브러리와 확장기능(Extension)
1. 라이브러리(Library) 정의 PHP 라이브러리는 미리 작성된 PHP 코드 집합으로, 특정 기능(예: 날짜 처리, 이미지 처리, PDF 생성 등)을 제공하여 개발자가 쉽게 활용할 수 있도록 만들어진 모듈입니다. 종류 - 사용자 정의 라이브러리: 직접 만든 함수나 클래스 집합 - 외부 오픈소스 라이브러리: 다른 개발자들이 만든 공개 라이브러리 - 프레임워크 내 라이브러리: Laravel, CodeIgniter 등 프레임워크에서 제공 사용 방법 1) 직접 include include 'lib/math.php'; $result = add(2, 3); 2) Composer로 설치 (권장) Composer는 PHP용 패키지 관리자입니다. composer require phpmailer/phpmailer composer.json에 의존성 등록되고, vendor/autoload.php로 자동 로드됩니다. require 'vendor/autoload.php'; use PHPMailer\PHPMailer\PHPMailer; $mail = new PHPMailer(); 유명 PHP 라이브러리 예시 라이브러리 기능 PHPMailer 이메일 발송 Guzzle HTTP 클라이언트 Carbon 날짜/시간 처리 Dompdf PDF 생성 Monolog 로깅(logging) 처리 Intervention Image 이미지 처리 2. 확장기능 (Extension) 정의 PHP 확장기능은 PHP 엔진(C 엔진 레벨)에 추가되는 저수준 기능 모듈입니다. 주로 성능 향상이나 외부 시스템 연동을 위해 사용됩니다. - .so (Linux), .dll (Windows) 형태의 바이너리 파일 - PHP 코드에서 직접 로드하거나 php.ini에서 설정 설치 및 확인 설치된 확장 확인 php -m # 설치된 확장 목록 출력 php -i # phpinfo()와 같은 전체 환경 정보 출력 확장 설치 (예:  pdo_mysql ) - Ubuntu/Debian: sudo apt install php-mysql - RedHat/CentOS: sudo yum install php-mysqlnd - Windows: - php.ini에서 주석 해제: ;extension=pdo_mysql ↓ extension=pdo_mysql 동적 로드 if (!extension_loaded('mbstring')) { dl('mbstring.so'); // 일부 시스템에서만 동작 } 주요 PHP 확장기능 확장 기능 PDO, mysqli 데이터베이스 연동 mbstring 다국어 문자열 처리 gd, imagick 이미지 처리 curl HTTP 요청 openssl 암호화/복호화 zip, zlib 압축 처리 intl 다국어 지원 bcmath, gmp 고정소수점/대형 정수 연산 soap SOAP 웹 서비스 처리 3. 라이브러리 vs 확장기능 차이 구분 라이브러리 확장기능 구현 언어 PHP C (또는 C++) 설치 방식 include, require, Composer PHP 빌드 시 포함 또는 OS 패키지 설치 성능 일반적 매우 빠름 (네이티브 수준) 사용 용도 일반 기능 성능 중심, 시스템 연동 예 PHPMailer, Guzzle mbstring, curl, gd 4. Composer를 통한 라이브러리 관리 composer.json 예시: { "require": { "monolog/monolog": "^2.0" } } 명령어: composer install # 처음 설치 composer update # 버전 업데이트 composer dump-autoload # 자동 로딩 갱신 5. 사용자 정의 라이브러리 만들기 예: math.php <?php function add($a, $b) { return $a + $b; } 사용: include 'math.php'; echo add(2, 3); // 5 결론 요약 항목 설명 라이브러리 PHP 코드로 작성된 기능 집합. 재사용 목적 확장기능 PHP 엔진 레벨의 C 확장. 성능/시스템 연동 목적 Composer PHP 라이브러리 관리 도구 확장 설치 OS 패키지 설치 또는 php.ini 수정 필요 함께 사용 라이브러리는 확장을 필요로 할 수 있음 (예: Guzzle은 curl 확장 필요)

댓글

아직 댓글이 없습니다.

로그인 후 댓글을 남길 수 있습니다.