Code Igniter (CI) adalah framework pengembangan aplikasi dengan menggunakan bahasa PHP(PHP: Hypertext Preprocessor), suatu kerangka pembuatan program dengan menggunakan PHP. Pengembangan dapat langsung menghasilkan program dengan cepat, dengan mengikuti kerangka kerja untuk membuat yang telah disiapkan oleh framework CI.
Dengan menggunakan framework kita tidak perlu membuat program dari awal, tetapi kita sudah diberikan library fungsi yang sudah disediakan. Kita hanya perlu memasukan data yang akan diproses dan bagaimana menampilkannya.
Framework CI menyediakan dokumentasi yang jelas dan lengkap. Framework CI telah dibahas juga dalam forum IBM dan Oracle untuk pengembangan aplikasi berbasis web dengan menggunakan PHP. Seperti telah diketahui, IBM dan Oracle telah memiliki kerjasama dengan Zend, yang mengembangkan PHP dengan produk yang dikenal dengan ZendCore for IBM DB2 dan Informix, danZendCore for Oracle. Produk ZendCore dipesan khusus oleh kedua perusahaan tersebut, untuk memudahkan pengembangan aplikasi dengan PHP menggunakan database IBM DB2atau Informix, dan Oracle.
CI dapat digunakan dengan menggunakan server web Apache dan MS IIS. Hanya saja, tidak semua fitur dari CI dapat diimplementasikan dengan sempurna di MS IIS karena CI dirancang dan dikembangkan dengan acuan Apache.
Secara umum Code Igniter memberikan dan menyediakan:
- Suatu kerangka kerja dengan jejak yang sedikit (small footprint)
- Kinerja yang bagus
- Kompatibilitas dengan akun hosting standar yang terpasang dengan perbedaan versi dan konfigurasi
- Suatu kerangka kerja yang hampir tidak memerlukan konfigurasi
- Suatu kerangka kerja yang tidak mengharuskan bekerja dengan aturan pengkodean yang mengikat/membatasi
- Cara untuk menghindarkan kompleksitas dalam membuat program, dengan menyediakan solusi yang sederhana
- Suatu dokumentasi kerangka kerja yang menyeluruh dan jelas
Fitur Code Igniter
- Sistem berbasis Model-View-Controller (MVC)
- Framework yang ringan
- Memiliki fitur class database yang mendukung beberapa platform
- Dukungan database dengan Active Record
- Form dan validasi data
- Keamanan dan filtering XSS
- Session management
- Class untuk pengiriman email yang mendukung lampiran (attachment), email dengan HTML/Text, menggunakan berbagai protokol (Sendmail, SMTP, dan Mail)
- Library manipulasi image (menggunting, mengubah ukuran, memutar, dan lainnya), mendukung GD, Image Magic, dan NetPBM
- Class untuk upload file
- Class FTP
- Lokalisasi
- Paginasi
- Enkripsi data
- Benchmarking
- Full Page Caching
- Logging Error
- Profiling aplikasi
- Class kalender
- Class user agent
- Class encoding ZIP
- Class engine template
- Class trackback
- Library XML-RPC
- Class unit pengujian
- URL yang bersahabat dengan search engine
- Routing URI yang fleksibel
- Mendukung hook dan ekstensi class
- Library fungsi "helper" yang banyak