PHP 프레임워크 – CodeIgniter – 0 – CodeIgniter 소개

PHP 프레임워크 - CodeIgniter - 0 - CodeIgniter 소개
PHP 프레임워크 – CodeIgniter – 0 – CodeIgniter 소개

PHP 프레임워크 – CodeIgniter – 소개

안녕하세요~ 😄
오늘은 PHP 프레임워크 중에서도 가볍고 빠르기로 유명한 CodeIgniter에 대해 소개드릴게요.
다양한 PHP 프레임워크들이 존재하지만, CodeIgniter는 마치 **’오토바이처럼 민첩하게 달리는 웹 프레임워크’**라고 보시면 돼요! 🏍️

웹 초보자부터 숙련된 개발자까지, 누구나 손쉽게 접근할 수 있도록 구성된 이 프레임워크를 지금부터 하나하나 살펴볼게요!


CodeIgniter란 무엇인가요?

**CodeIgniter(코드이그나이터)**는 PHP로 개발된 오픈소스 웹 애플리케이션 프레임워크입니다.
MVC 아키텍처를 기반으로 빠른 성능과 적은 자원 소모를 목표로 만들어졌어요.

주요 특징 요약:

특징 설명
초경량 프레임워크 설치 후 바로 실행 가능, 작고 가볍습니다.
학습 곡선이 낮음 초보자도 쉽게 배우고 사용할 수 있어요.
빠른 실행 속도 복잡한 구성 없이도 매우 빠른 응답속도 제공
MVC 구조 지원 깔끔한 코드 구조, 유지보수에 유리
문서화 우수 공식 문서가 매우 잘 정리돼 있어 학습에 유리
자동 로딩 최소화 필요한 것만 가져다 쓰는 스타일 (Lazy loading)

CodeIgniter의 역사 간단 정리

  • 2006년 EllisLab에서 최초 출시
  • 2014년 이후 **British Columbia Institute of Technology (BCIT)**가 유지보수 주체
  • 현재는 CodeIgniter 4.x 버전이 최신이며, PHP 7.2 이상을 지원

CodeIgniter가 사랑받는 이유는?

🎯 가볍고 빠르다!
→ Laravel 같은 무거운 프레임워크는 서버 자원을 많이 소모하지만, CodeIgniter는 굉장히 가볍고 로딩 속도가 빠르답니다.

🧠 쉽게 배우고 금방 개발할 수 있다!
→ 디렉토리 구조도 단순하고, 클래스를 바로 불러와 쓸 수 있기 때문에 진입 장벽이 낮아요.

📦 설치가 정말 간단하다!
→ 단순히 폴더를 복사하고, URL 설정만 조금 해주면 바로 실행 가능해요. Composer 설치도 선택사항일 정도죠.

🔧 제약이 적다!
→ 개발자가 원하는 방식대로 커스터마이징이 가능하며, 필수적인 설정이 거의 없어서 자유도가 높아요.


CodeIgniter의 기본 아키텍처 (MVC)

CodeIgniter는 MVC(Model-View-Controller) 구조를 따릅니다.

  • Model: 데이터베이스와의 통신 (데이터 읽기, 쓰기 등)
  • View: 사용자에게 보여지는 화면 (HTML + PHP)
  • Controller: Model과 View를 연결하는 역할 (요청/응답 처리)
[사용자 요청] → Controller → Model ↔ Database
                                ↓
                           View 생성 → [응답 반환]

예를 들어, 사용자가 /products 페이지를 요청하면,

  1. ProductController가 호출되고,
  2. ProductModel을 통해 DB에서 제품 목록을 조회하고,
  3. products_view.php로 그 결과를 보여주는 구조예요.

CodeIgniter 3 vs CodeIgniter 4

항목 CodeIgniter 3 CodeIgniter 4
PHP 지원 PHP 5.6 이상 PHP 7.2 이상
네임스페이스 ❌ 없음 ✅ 지원
PSR-4 오토로딩
Composer 부분 지원 완전 지원
구조 간단 모듈화 가능
성능 빠름 더 빠름 및 안전함

지금 시작하신다면 무조건 CodeIgniter 4를 추천드려요!


CodeIgniter는 어떤 프로젝트에 어울릴까요?

🟢 잘 맞는 프로젝트:

  • 간단한 CRUD 기반 웹 애플리케이션
  • 빠르게 만들어야 하는 내부용 툴
  • 가벼운 API 서버
  • 라이트한 블로그, 포트폴리오 사이트

🔴 어울리지 않는 프로젝트:

  • 매우 복잡한 비즈니스 로직이 많은 프로젝트
  • 무겁고 방대한 마이크로서비스 아키텍처
  • 초대형 커머스 플랫폼 (Laravel, Symfony 권장)

CodeIgniter의 실제 코드 맛보기

// app/Controllers/Hello.php
namespace App\Controllers;

class Hello extends BaseController
{
    public function index()
    {
        return view('hello_world');
    }
}
// app/Views/hello_world.php
<html>
<body>
    <h1>안녕하세요 CodeIgniter!</h1>
</body>
</html>

브라우저에서 /hello로 접속하면 화면에 “안녕하세요 CodeIgniter!”가 뜨는 구조예요 🙌


CodeIgniter 시작을 위한 준비물

항목 설명
PHP 7.2 이상 (CodeIgniter 4 기준)
웹 서버 Apache, Nginx 등
DB MySQL, PostgreSQL, SQLite 등
Composer (선택사항) 의존성 관리 도구

주의할 점 ✅

항목 설명
CI 3와 CI 4는 구조가 완전히 다르므로 호환되지 않아요
보안 설정(예: CSRF, XSS 필터링)을 기본적으로 켜주세요
Composer 없이도 가능하지만 유지보수 측면에선 Composer 사용 추천
경량 프레임워크이므로 너무 많은 기능을 억지로 넣으면 Laravel보다 불편할 수 있어요
DB 사용 시 Query Builder 또는 모델 클래스 활용 추천 (직접 SQL 작성 시 주의!)

마무리하며 😊

CodeIgniter는 ‘빠르게, 가볍게, 쉽게’라는 슬로건에 딱 맞는 프레임워크입니다.
특히 Laravel처럼 복잡하고 무거운 프레임워크가 부담스러운 분들께는 최고의 선택이 될 수 있어요!

앞으로 이어질 시리즈에서는 CodeIgniter 설치부터, 라우팅, 컨트롤러, 뷰, 모델, 데이터베이스 연결까지
차근차근 따라 하면서 실전 웹 애플리케이션을 함께 만들어보도록 해요!

그럼 다음 시간에는 CodeIgniter 설치와 구성편에서 만나요~ 🛠️📦🚀

답글 남기기