Developer

CodeIgniter 4: Panduan Lengkap Framework PHP Modern untuk Pemula hingga Developer

Sponsored

Bagi developer PHP, memilih framework yang tepat bisa membuat proses pembuatan aplikasi web menjadi jauh lebih cepat dan terstruktur. Salah satu framework PHP yang masih banyak digunakan hingga sekarang adalah CodeIgniter 4 atau sering disebut CI4.

CodeIgniter 4 hadir sebagai penerus dari CodeIgniter 3 dengan membawa banyak peningkatan, mulai dari struktur kode yang lebih modern, keamanan lebih baik, dukungan PHP terbaru, hingga performa yang tetap ringan.

Framework ini banyak dipilih oleh developer yang ingin membuat website, sistem informasi, aplikasi bisnis, dashboard admin, hingga REST API tanpa harus menggunakan framework yang terlalu kompleks.

Jika dibandingkan dengan framework PHP lain, CodeIgniter 4 memiliki keunggulan utama yaitu mudah dipelajari, memiliki dokumentasi yang jelas, dan membutuhkan resource server yang relatif kecil.

Pada artikel ini kita akan membahas CodeIgniter 4 secara lengkap mulai dari pengertian, sejarah singkat, alasan penggunaannya, fitur utama, hingga persiapan sebelum mulai belajar CI4.


Apa Itu CodeIgniter 4?

CodeIgniter 4 adalah sebuah framework PHP open source yang digunakan untuk membangun aplikasi web dengan konsep Model View Controller (MVC).


Framework ini dikembangkan untuk membantu programmer membuat aplikasi PHP dengan struktur yang lebih rapi dibandingkan menulis kode PHP secara langsung dari awal.

Tanpa framework, sebuah project PHP biasanya akan memiliki banyak file yang sulit dikelola ketika aplikasi mulai berkembang.

Misalnya sebuah aplikasi memiliki:

  • Halaman login
  • Dashboard pengguna
  • Manajemen database
  • Upload file
  • Sistem laporan
  • API

Jika semua dibuat tanpa struktur yang jelas, kode program akan cepat menjadi sulit dirawat.

CodeIgniter membantu mengatur bagian-bagian tersebut agar lebih terorganisir.

Contohnya:

Model
digunakan untuk mengelola data dan komunikasi dengan database.

View
digunakan untuk menampilkan tampilan kepada pengguna.

Controller
digunakan sebagai penghubung antara model dan view.

Dengan konsep tersebut, developer dapat membuat aplikasi yang lebih mudah dikembangkan.


Sejarah Singkat CodeIgniter

CodeIgniter pertama kali diperkenalkan pada tahun 2006 oleh perusahaan bernama EllisLab.

Framework ini mendapatkan popularitas karena memiliki konsep yang sederhana dibandingkan framework PHP lain pada masa tersebut.

Banyak programmer memilih CodeIgniter karena:

  • Instalasi mudah
  • Tidak membutuhkan konfigurasi rumit
  • Performa cepat
  • Dokumentasi mudah dipahami

Setelah perjalanan panjang, CodeIgniter kemudian dikembangkan oleh British Columbia Institute of Technology (BCIT).

Versi terbaru yaitu CodeIgniter 4 membawa perubahan besar dibandingkan CodeIgniter 3.

Beberapa perubahan penting pada CI4:

  • Mendukung PHP versi modern
  • Struktur folder lebih profesional
  • Sistem konfigurasi lebih baik
  • Dukungan namespace PHP
  • Peningkatan keamanan
  • Testing lebih mudah

Kenapa Harus Belajar CodeIgniter 4?

Banyak orang bertanya:

"Apakah CodeIgniter 4 masih relevan?"

Jawabannya: masih.

Walaupun terdapat framework PHP lain seperti Laravel, CodeIgniter 4 tetap memiliki pengguna karena menawarkan pendekatan yang lebih sederhana.

Berikut beberapa alasan kenapa CI4 masih layak dipelajari.


1. Mudah Dipelajari Pemula

Salah satu alasan terbesar CodeIgniter populer adalah kemudahannya.

Bagi seseorang yang baru belajar PHP, Laravel terkadang terasa terlalu besar karena memiliki banyak fitur dan konsep tambahan.

CodeIgniter 4 memberikan pengalaman belajar yang lebih sederhana.

Pemula dapat memahami konsep penting seperti:

  • Routing
  • Controller
  • Model
  • Database
  • View
  • Migration

tanpa harus mempelajari terlalu banyak konsep tambahan.

Karena itu, CI4 sering menjadi pilihan untuk:

  • Mahasiswa
  • Siswa SMK jurusan komputer
  • Programmer PHP pemula
  • Developer yang baru mengenal framework

2. Performa Ringan dan Cepat

Kecepatan menjadi salah satu kelebihan utama CodeIgniter.

Framework ini memiliki ukuran yang relatif kecil dibandingkan beberapa framework PHP lainnya.

Dampaknya:

  • Loading aplikasi lebih cepat
  • Konsumsi server lebih rendah
  • Cocok untuk shared hosting
  • Mudah digunakan pada server dengan spesifikasi terbatas

Hal ini membuat CI4 cocok untuk berbagai kebutuhan seperti:

  • Website perusahaan
  • Sistem akademik
  • Aplikasi internal kantor
  • Portal berita
  • Website UMKM

3. Menggunakan Konsep MVC

Salah satu konsep penting dalam pengembangan aplikasi modern adalah MVC.

MVC membantu memisahkan kode berdasarkan fungsi.

Contohnya:

Tanpa MVC:

login.php
dashboard.php
produk.php

Semua kode bercampur:

  • HTML
  • PHP
  • Query database

Akibatnya ketika aplikasi besar, kode menjadi sulit dikelola.

Dengan MVC:

app
│
├── Controllers
│
├── Models
│
└── Views

Kode menjadi lebih terstruktur.

Developer lain juga lebih mudah memahami project tersebut.


4. Dokumentasi Lengkap

Salah satu faktor penting dalam memilih framework adalah dokumentasi.

CodeIgniter memiliki dokumentasi resmi yang cukup lengkap.

Developer dapat mempelajari:

  • Instalasi
  • Routing
  • Database
  • Security
  • Library
  • Helper
  • Testing

Dokumentasi yang jelas membuat proses belajar menjadi lebih mudah.


5. Cocok untuk Berbagai Jenis Project

CodeIgniter 4 dapat digunakan untuk membuat berbagai aplikasi.

Contoh project yang dapat dibuat:

Jenis Project Contoh
Website Bisnis Company profile
Sistem Informasi Akademik, inventory
Dashboard Admin panel
Marketplace Sistem toko online
API Mobile backend
Portal Konten Blog dan berita

Fitur Utama CodeIgniter 4

CodeIgniter 4 membawa berbagai fitur modern yang membantu developer membuat aplikasi lebih aman dan mudah dikembangkan.


Routing Modern

Routing digunakan untuk menentukan halaman berdasarkan URL.

Contoh:

example.com/user/profile

URL tersebut dapat diarahkan menuju controller tertentu.

Dengan routing, struktur URL menjadi lebih rapi dan SEO friendly.


Database Support

CI4 menyediakan fitur database yang memudahkan developer bekerja dengan database seperti:

  • MySQL
  • PostgreSQL
  • SQLite
  • SQL Server

Developer tidak perlu menulis semua koneksi database secara manual.


Query Builder

Query Builder membantu membuat query database dengan cara yang lebih aman dan mudah dibaca.

Contoh:

$this->db->table('users')
         ->where('id', 1)
         ->get();

Kode menjadi lebih rapi dibandingkan menulis query SQL berulang kali.


Security Features

Keamanan menjadi bagian penting dalam aplikasi web.

CodeIgniter 4 memiliki fitur keamanan seperti:

  • CSRF Protection
  • XSS Filtering
  • Input Validation
  • Security Headers

Fitur ini membantu developer mengurangi risiko serangan umum pada aplikasi web.


Mendukung REST API

Saat ini banyak aplikasi membutuhkan API.

CodeIgniter 4 mendukung pembuatan REST API untuk:

  • Mobile application
  • Frontend framework
  • Integrasi sistem

Misalnya:

GET /api/users

POST /api/login

Siapa yang Cocok Belajar CodeIgniter 4?

CodeIgniter 4 cocok untuk:

Pemula PHP

Jika sudah memahami:

  • HTML
  • CSS
  • PHP dasar
  • Database MySQL

maka CI4 menjadi langkah berikutnya.


Developer PHP Lama

Bagi pengguna CodeIgniter 3, belajar CI4 adalah upgrade penting karena banyak perubahan pada struktur dan standar PHP modern.


Freelancer

CI4 cocok untuk freelancer karena banyak kebutuhan client masih menggunakan PHP.

Project seperti:

  • Website sekolah
  • Sistem inventory
  • Dashboard bisnis
  • Aplikasi administrasi

sering dibuat menggunakan framework ringan seperti CodeIgniter.


Mahasiswa

CI4 juga cocok digunakan untuk:

  • Tugas akhir
  • Skripsi
  • Project kampus

Karena konsepnya mudah dipahami dan implementasinya cepat.

Perbedaan CodeIgniter 3 dan CodeIgniter 4

Bagi developer yang sebelumnya menggunakan CodeIgniter 3, memahami perbedaan dengan CodeIgniter 4 sangat penting.

Walaupun masih menggunakan konsep dasar yang sama yaitu MVC, CI4 membawa banyak perubahan agar lebih sesuai dengan standar pengembangan PHP modern.


Berikut beberapa perbedaan utama antara CodeIgniter 3 dan CodeIgniter 4.

Fitur CodeIgniter 3 CodeIgniter 4
PHP Support PHP versi lama PHP versi modern
Struktur Folder Sederhana Lebih profesional
Namespace Tidak digunakan Menggunakan namespace
Autoloading Sistem lama PSR-4 Autoload
Routing Dasar Lebih fleksibel
Security Standar Lebih ditingkatkan
Testing Terbatas Mendukung testing
Environment Terbatas Mendukung konfigurasi environment

1. Struktur Folder Lebih Modern

Pada CI3, struktur aplikasi masih menggunakan folder seperti:

application
system
index.php

Sedangkan CI4 menggunakan struktur:

app
public
system
writable
tests

Struktur baru ini membuat aplikasi lebih aman karena file penting dapat dipisahkan dari folder public.


2. Dukungan Namespace PHP

CodeIgniter 4 mengikuti standar PHP modern dengan menggunakan namespace.

Contohnya:

namespace App\Controllers;

Hal ini membuat kode lebih mudah diatur terutama ketika aplikasi memiliki banyak class.


3. Menggunakan Composer

CI4 menggunakan Composer sebagai dependency manager.

Composer membantu mengelola:

  • Library tambahan
  • Package PHP
  • Autoloading

Contohnya:

composer create-project codeigniter4/appstarter project-name

Dengan Composer, instalasi framework menjadi lebih mudah.


Persiapan Sebelum Belajar CodeIgniter 4

Sebelum mulai menggunakan CI4, ada beberapa hal yang sebaiknya sudah dipahami.


1. Memahami Dasar HTML

HTML digunakan untuk membuat struktur halaman website.

Contoh:

Hello CodeIgniter

HTML akan menjadi bagian dari View dalam CI4.


2. Memahami CSS

CSS digunakan untuk mengatur tampilan.

Contohnya:

  • Warna
  • Layout
  • Responsive design
  • Animasi

Framework seperti Bootstrap juga sering digunakan bersama CodeIgniter.


3. Memahami Dasar PHP

Karena CodeIgniter adalah framework PHP, maka dasar PHP wajib dipahami.

Minimal memahami:

  • Variabel
  • Array
  • Function
  • Class
  • Object
  • OOP PHP

Contoh sederhana:


4. Memahami Database

Sebagian besar aplikasi web membutuhkan database.

Contoh database yang sering digunakan:

  • MySQL
  • MariaDB
  • PostgreSQL

Konsep yang perlu dipahami:

  • Table
  • Field
  • Primary Key
  • Query
  • Relationship

5. Memahami Konsep MVC

Sebelum menggunakan CI4, konsep MVC perlu dipahami.

MVC terdiri dari:

Model

Bertugas mengelola data.

Contoh:

  • Mengambil data user
  • Menyimpan data produk
  • Update database

View

Bertugas menampilkan halaman.

Contoh:

  • Halaman login
  • Dashboard
  • Detail produk

Controller

Bertugas mengatur alur aplikasi.

Controller menerima request pengguna kemudian menentukan proses berikutnya.

Contoh:

Pengguna membuka:

/produk

Controller:

ProdukController

mengambil data melalui:

ProdukModel

kemudian mengirimkan hasil ke:

produk_view.php

Cara Install CodeIgniter 4

Ada beberapa cara untuk menginstall CodeIgniter 4.

Cara yang paling direkomendasikan adalah menggunakan Composer.



Install CodeIgniter 4 Menggunakan Composer

Pastikan komputer sudah memiliki:

Checklist:

✅ PHP 8.x atau versi sesuai kebutuhan CI4
✅ Composer
✅ Web Server (Apache/Nginx)
✅ Database MySQL/MariaDB


1. Cek Versi PHP

Buka terminal:

php -v

Contoh hasil:

PHP 8.3.x

Jika PHP sudah muncul berarti instalasi berhasil.


2. Cek Composer

Jalankan:

composer -V

Jika muncul versi Composer berarti siap digunakan.


3. Membuat Project CodeIgniter 4

Masuk ke folder tempat project ingin dibuat.

Kemudian jalankan:

composer create-project codeigniter4/appstarter belajar-ci4

Composer akan otomatis:

  • Download CI4
  • Membuat struktur folder
  • Menginstall dependency

Setelah selesai masuk ke folder:

cd belajar-ci4

Jalankan server:

php spark serve

Jika berhasil akan muncul:

CodeIgniter development server started

Buka browser:

http://localhost:8080

Jika halaman CodeIgniter muncul berarti instalasi berhasil.


Mengenal Struktur Folder CodeIgniter 4

Setelah berhasil install, kita akan melihat beberapa folder penting.


Struktur dasar CI4:

belajar-ci4

├── app
├── public
├── system
├── writable
├── tests
├── vendor
└── spark

Mari kita bahas satu per satu.


Folder app

Folder ini adalah tempat utama developer bekerja.

Di dalamnya terdapat:

app

├── Controllers
├── Models
├── Views
├── Config
├── Database
├── Helpers
└── Libraries

Controllers

Berisi file controller.

Contoh:

Home.php
User.php
Product.php

Controller bertugas menerima request pengguna.


Models

Berisi logika database.

Contoh:

UserModel.php
ProductModel.php

Model biasanya berhubungan dengan tabel database.


Views

Berisi tampilan HTML.

Contoh:

home.php
login.php
dashboard.php

Folder Public

Folder public adalah folder yang dapat diakses langsung melalui browser.

Biasanya berisi:

public

├── index.php
├── css
├── js
└── images

File seperti:

  • CSS
  • Javascript
  • Gambar

biasanya diletakkan di sini.


Folder Writable

Folder writable digunakan untuk menyimpan file yang dibuat oleh aplikasi.

Contohnya:

  • Cache
  • Log
  • Upload file sementara

Pastikan folder ini memiliki permission yang benar.


Folder System

Folder system berisi file inti CodeIgniter.

Developer biasanya tidak perlu mengubah isi folder ini.


File Penting Dalam CodeIgniter 4

Selain folder, ada beberapa file penting yang harus dipahami.


File env

Digunakan untuk menyimpan konfigurasi environment.

Contoh:

.env

Biasanya berisi:

  • Database
  • URL aplikasi
  • Mode development

File Routes.php

Lokasi:

app/Config/Routes.php

Digunakan untuk mengatur URL aplikasi.

Contoh:

$routes->get('/', 'Home::index');

Artinya:

Ketika membuka halaman utama, jalankan:

Home Controller
method index

File Database.php

Lokasi:

app/Config/Database.php

Digunakan untuk konfigurasi database.

Contoh:

public $default = [
    'hostname' => 'localhost',
    'username' => 'root',
    'password' => '',
    'database' => 'belajar_ci4'
];

File BaseController.php

Lokasi:

app/Controllers/BaseController.php

BaseController digunakan sebagai controller utama yang dapat diwariskan oleh controller lain.

Biasanya digunakan untuk:

  • Load helper
  • Load library
  • Konfigurasi global

Tips Agar Belajar CI4 Lebih Cepat

Beberapa tips untuk pemula:

  • Jangan langsung membuat project besar
  • Pahami konsep MVC terlebih dahulu
  • Latihan membuat CRUD sederhana
  • Biasakan membaca dokumentasi
  • Gunakan Git untuk menyimpan project
  • Pelajari database dengan baik

Membuat Project Pertama dengan CodeIgniter 4

Setelah berhasil melakukan instalasi CodeIgniter 4, langkah berikutnya adalah memahami cara membuat project sederhana.

Pada tahap awal, kita akan membuat halaman sederhana yang menampilkan data dari controller menuju view.

Alur kerja CI4:

User
 |
 |
Request URL
 |
 |
Controller
 |
 |
View
 |
 |
Tampilan Website

Contohnya ketika pengguna membuka:

http://localhost:8080/profile

Maka CodeIgniter akan mencari route yang sesuai, menjalankan controller, kemudian menampilkan view.



Membuat Controller Pertama di CI4

Controller adalah bagian yang menerima request dari pengguna.

Semua controller berada di folder:

app/Controllers

Buat file baru:

Profile.php

Isi dengan kode berikut:

Penjelasan:

Namespace

namespace App\Controllers;

Memberitahu lokasi class controller.


Class Controller

class Profile extends BaseController

Controller Profile menggunakan fungsi dasar dari BaseController.


Method index()

public function index()

Method ini akan dijalankan ketika halaman dipanggil.


Menampilkan View

return view('profile');

Kode ini akan memanggil file:

app/Views/profile.php

Membuat View Pertama

Sekarang buat file:

app/Views/profile.php

Isi:




    Profile CI4


    

Halo, Selamat Datang di CodeIgniter 4

Ini adalah halaman pertama menggunakan CI4.

Ketika controller dipanggil, halaman ini akan tampil.


Mengatur Routing CodeIgniter 4

Agar URL dapat mengenali controller tersebut, kita perlu membuat route.

Buka:

app/Config/Routes.php

Tambahkan:

$routes->get('/profile', 'Profile::index');

Sekarang buka:

http://localhost:8080/profile

Maka halaman profile akan muncul.


Memahami Cara Kerja Routing CI4

Routing berfungsi sebagai penghubung antara URL dan controller.

Contoh:

/profile

diarahkan menuju:

Profile Controller

kemudian menjalankan:

index()

Alurnya:

Browser
   |
   |
/profile
   |
   |
Routes.php
   |
   |
Profile Controller
   |
   |
profile.php View

Mengirim Data dari Controller ke View

Biasanya website tidak hanya menampilkan halaman statis.

Kita juga perlu mengirim data.

Contoh:

Controller:

public function index()
{
    $data = [
        'title' => 'Belajar CodeIgniter 4',
        'author' => 'RCode'
    ];

    return view('profile', $data);
}

Kemudian pada view:

Ditulis oleh

Hasil:

Belajar CodeIgniter 4

Ditulis oleh RCode

Mengenal Model pada CodeIgniter 4

Jika controller bertugas mengatur alur aplikasi, maka model bertugas mengelola data.

Biasanya model digunakan untuk:

  • Mengambil data database
  • Menyimpan data
  • Mengubah data
  • Menghapus data

Model berada di:

app/Models

Membuat Model User

Buat file:

UserModel.php

Isi:

Penjelasan Model

Nama Tabel

protected $table = 'users';

Memberitahu model bahwa data berasal dari tabel users.


Primary Key

protected $primaryKey = 'id';

Menentukan kolom utama.


Allowed Fields

protected $allowedFields

Menentukan kolom yang boleh dimasukkan.

Ini membantu keamanan aplikasi.


Menghubungkan CodeIgniter 4 dengan Database

Aplikasi web hampir selalu membutuhkan database.

Contoh:

Database:

belajar_ci4

Tabel:

users

Struktur:

Field Type
id INT
name VARCHAR
email VARCHAR

Konfigurasi Database CI4

Buka:

app/Config/Database.php

Atur:

public $default = [
    'hostname' => 'localhost',
    'username' => 'root',
    'password' => '',
    'database' => 'belajar_ci4',
    'DBDriver' => 'MySQL'
];

Mengambil Data Database Menggunakan Model

Contoh controller:

findAll();

        return view('users',$data);

    }

}

Kode:

$model->findAll();

akan mengambil semua data user.


Menampilkan Data di View

Buat:

users.php

Isi:

Daftar User

Hasil:

Daftar User

Budi
Andi
Rina

Tambahkan caption gambar
Membuat CRUD dengan CodeIgniter 4

CRUD adalah konsep dasar hampir semua aplikasi.

CRUD berarti:

Aksi Fungsi
Create Menambah data
Read Melihat data
Update Mengubah data
Delete Menghapus data

Contoh penggunaan:

  • Data pengguna
  • Produk
  • Artikel
  • Berita
  • Transaksi

Contoh Alur CRUD CI4

Form Input
    |
    |
Controller
    |
    |
Model
    |
    |
Database

Kesalahan Umum Pemula Saat Belajar CI4

Banyak pengguna baru mengalami beberapa masalah berikut.


1. Mengubah Folder System

Kesalahan:

Mengedit file dalam:

system/

Padahal folder tersebut adalah core framework.

Solusi:

Gunakan:

app/

untuk membuat perubahan.


2. Tidak Memahami MVC

Banyak pemula memasukkan semua kode dalam controller.

Akibatnya:

  • Controller terlalu panjang
  • Sulit diperbaiki
  • Sulit dikembangkan

Solusi:

Pisahkan:

Controller → Logika aplikasi

Model → Database

View → Tampilan


3. Tidak Menggunakan Environment

Menggunakan konfigurasi langsung pada project produksi dapat berbahaya.

Gunakan:

.env

untuk:

  • Database
  • API key
  • URL aplikasi

4. Tidak Melakukan Validasi Input

Data dari pengguna harus selalu divalidasi.

Contoh:

Form login:

  • Cek email
  • Cek password
  • Filter karakter berbahaya

Tips Membuat Project CI4 Profesional

Agar project lebih mudah dikembangkan:

Gunakan Struktur Yang Rapi

Contoh:

Controllers
Models
Views
Services
Libraries
Helpers

Gunakan Version Control

Gunakan:

  • Git
  • GitHub
  • GitLab

Agar perubahan kode mudah dilacak.


Buat Reusable Component

Jangan membuat kode yang sama berkali-kali.

Gunakan:

  • Helper
  • Library
  • Template layout

Kesimpulan

CodeIgniter 4 merupakan framework PHP yang tetap menarik untuk dipelajari karena menawarkan kombinasi antara kemudahan, performa, dan struktur kode yang modern.

Bagi pemula PHP, CI4 dapat menjadi langkah awal memahami konsep framework dan pengembangan aplikasi web profesional.

Dengan memahami:

  • MVC
  • Routing
  • Controller
  • Model
  • View
  • Database

developer sudah memiliki dasar kuat untuk membuat berbagai jenis aplikasi menggunakan CodeIgniter 4.


FAQ CodeIgniter 4

1. Apa itu CodeIgniter 4?

CodeIgniter 4 adalah framework PHP open source yang digunakan untuk membuat aplikasi web dengan konsep MVC.


2. Apakah CodeIgniter 4 masih digunakan?

Ya. Banyak developer masih menggunakan CI4 untuk membuat website, sistem informasi, dashboard, dan API.


3. Apakah CodeIgniter 4 cocok untuk pemula?

Cocok. Struktur CI4 cukup sederhana sehingga mudah dipahami oleh orang yang sudah memahami dasar PHP.


4. Apa perbedaan CI3 dan CI4?

CI4 menggunakan standar PHP modern, namespace, Composer, struktur folder baru, serta peningkatan keamanan.


5. Apakah CodeIgniter 4 gratis?

Ya. CodeIgniter 4 bersifat open source dan dapat digunakan secara gratis.


6. Apakah CI4 bisa digunakan untuk membuat REST API?

Bisa. CI4 memiliki fitur yang mendukung pembuatan API.


7. Apakah CI4 lebih ringan dibanding Laravel?

Secara umum CI4 dikenal sebagai framework yang ringan dan sederhana, sedangkan Laravel memiliki fitur yang lebih lengkap.


8. Apakah harus belajar PHP dulu sebelum CI4?

Sebaiknya memahami PHP dasar terlebih dahulu agar lebih mudah memahami konsep framework.

Bagikan Artikel Ini

Preview gambar artikel