1. Pengantar CodeIgniter 4
CodeIgniter 4 adalah framework PHP yang ringan, cepat, dan mudah digunakan untuk membangun aplikasi web. Framework ini mengikuti pola MVC (Model-View-Controller) yang memisahkan logika aplikasi, tampilan, dan data sehingga memudahkan pengembangan dan pemeliharaan aplikasi.
Dengan CodeIgniter 4, Anda dapat membuat aplikasi web yang scalable dan mudah dikembangkan, mulai dari aplikasi sederhana hingga aplikasi kompleks dengan fitur lengkap.
2. Persiapan Lingkungan Pengembangan
Sebelum mulai membuat aplikasi dengan CodeIgniter 4, pastikan Anda sudah menyiapkan lingkungan pengembangan yang sesuai:
-
PHP versi 7.3 atau lebih tinggi
-
Composer untuk manajemen dependensi
-
Web server seperti Apache atau Nginx
-
Database seperti MySQL, PostgreSQL, atau SQLite
Setelah semua siap, Anda dapat menginstal CodeIgniter 4 menggunakan Composer dengan perintah:
composer create-project codeigniter4/appstarter nama-aplikasi
3. Struktur Folder dan File CodeIgniter 4
Setelah instalasi, Anda akan melihat struktur folder seperti berikut:
-
app/
- Tempat kode aplikasi Anda (Controller, Model, View)
-
public/
- Folder root web server, berisi index.php dan aset publik
-
system/
- Kode inti CodeIgniter 4
-
writable/
- Folder untuk file yang dapat ditulis seperti cache dan logs
-
tests/
- Folder untuk pengujian aplikasi
Memahami struktur ini penting agar Anda dapat mengelola aplikasi dengan baik dan mengikuti standar framework.
4. Routing dan Controller
Routing adalah proses menentukan URL mana yang akan memanggil fungsi tertentu di controller. Di CodeIgniter 4, routing didefinisikan di
app/Config/Routes.php
.
$routes->get('home', 'Home::index');
Controller adalah kelas yang menangani permintaan dan mengatur logika aplikasi. Contoh controller sederhana:
namespace App\Controllers;
class Home extends BaseController
{
public function index()
{
return view('welcome_message');
}
}
5. Membuat View dan Template
View adalah bagian yang menampilkan data ke pengguna. Anda dapat membuat file view di
app/Views/
. Contoh file view
welcome_message.php
:
<h1>Selamat Datang di CodeIgniter 4!</h1>
<p>Ini adalah halaman utama aplikasi.</p>
Untuk membuat template yang dapat digunakan ulang, Anda bisa menggunakan fitur layout dengan
include
atau
section
di view.
6. Model dan Database
Model bertugas mengelola data dan berinteraksi dengan database. CodeIgniter 4 menyediakan
Model
yang memudahkan operasi CRUD.
namespace App\Models;
use CodeIgniter\Model;
class ProdukModel extends Model
{
protected $table = 'produk';
protected $primaryKey = 'id';
protected $allowedFields = ['nama', 'harga', 'deskripsi'];
}
Anda dapat menggunakan model ini di controller untuk mengambil atau menyimpan data.
8. Session dan Autentikasi
Session digunakan untuk menyimpan data pengguna selama sesi aktif, misalnya untuk login. CodeIgniter 4 menyediakan class session yang mudah digunakan.
$session = session();
$session->set('username', 'johndoe');
$username = $session->get('username');
Untuk autentikasi, Anda bisa membuat sistem login dengan memeriksa data user dan menyimpan status login di session.
9. Upload File dan Gambar
CodeIgniter 4 memudahkan proses upload file dan gambar dengan class
IncomingRequest
dan validasi file.
if ($file = $this->request->getFile('gambar')) {
if ($file->isValid() && ! $file->hasMoved()) {
$file->move(WRITEPATH . 'uploads');
}
}
Pastikan juga melakukan validasi tipe dan ukuran file agar aman.
10. Deployment Aplikasi
Setelah aplikasi selesai dikembangkan, langkah selanjutnya adalah deployment ke server produksi. Pastikan konfigurasi environment sudah diatur ke
production
.
-
Upload seluruh file aplikasi ke server hosting
-
Set folder
writable/
dan
public/
dengan permission yang tepat
-
Konfigurasi database di
.env
atau
app/Config/Database.php
-
Gunakan web server yang mendukung PHP dan atur root ke folder
public/
11. Kesimpulan dan Langkah Selanjutnya
CodeIgniter 4 adalah framework yang powerful dan mudah dipelajari untuk membangun aplikasi web modern. Dengan memahami konsep MVC, routing, model, view, dan fitur lainnya, Anda dapat membuat aplikasi yang terstruktur dan mudah dikembangkan.
Langkah selanjutnya adalah terus berlatih dengan membuat proyek nyata, mempelajari fitur lanjutan seperti REST API, testing, dan optimasi performa.
Selamat belajar dan semoga sukses membangun aplikasi web dengan CodeIgniter 4!