Konsep MVC (Model-View-Controller) pada CodeIgniter 4

Hai, Sobat Jagoan! Sudah tahu tentunya kalau CodeIgniter 4 menggunakan konsep arsitektur Model-View-Controller atau disingkat MVC. Dengan MVC, aplikasi yang dibangun lebih terstruktur, rapi, dan mudah dikelola. Untuk kamu yang baru pertama kali belajar CodeIgniter, memahami konsep MVC adalah langkah dasar yang sangat penting sebelum melangkah ke pengembangan aplikasi yang lebih kompleks.

Artikel ini akan membimbing kamu dari pemahaman konsep hingga membuat praktik sederhana MVC di CodeIgniter 4.

Apa itu Arsitektur MVC?
  • Model: Berfungsi menangani logika data dan berinteraksi dengan database.
  • View: Bertanggung jawab untuk menampilkan antarmuka ke pengguna (HTML, CSS, JS).
  • Controller: Menjembatani permintaan pengguna dari View dan mengambil atau menyimpan data lewat Model.

1) Pengguna melakukan request (contoh: mengunjungi URL).

2) Router mengarahkan permintaan ke Controller tertentu.

3) Controller memproses permintaan, lalu:

4) Jika butuh data > Controller panggil Model.

5) Jika hanya tampilan > langsung arahkan ke View.

6) Controller meneruskan hasil ke View untuk ditampilkan.

Kamu juga bisa mempelajari konsep MVC di artikel Memahami Konsep Dasar CodeIgniter 4.

Sebelum memulai praktik sederhana penerapan MVC, pastikan kamu sudah memenuhi persiapan di bawah berikut agar bisa mengikuti step-by-step dan memahami konsep MVC pada CodeIgniter 4.

Prasyarat

  1. PHP minimal versi 7.2
  2. Sudah menginstal CodeIgniter 4 di lokal komputer. Kalau belum, ikuti step-by-step instalasi CI4 di artikel Tutorial Menggunakan CodeIgniter 4

Yuk, mulai praktik, Sob!

Kali ini akan membuat tampilan daftar produk sederhana.

STEP 1: Membuat Controller

Buat file baru bernama Produk.php di dalam folder app/Controllers dan salin baris kode berikut untuk membuat controller produk.

				
					<?php

namespace App\Controllers;

class Produk extends BaseController
{
    public function index()
    {
        // Simulasi data produk
        $data['produk'] = [
            ['nama' => 'Laptop', 'harga' => 7500000],
            ['nama' => 'Mouse', 'harga' => 150000],
            ['nama' => 'Keyboard', 'harga' => 300000],
        ];

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

				
			

Penjelasan:

  • Method index() akan dipanggil ketika pengguna mengakses /produk
  • Data produk disiapkan dalam array dan dikirim ke View

STEP 2: Membuat View

Setelah membuat controller, berikutnya buat file bernama produk_view.php di folder app/Views.

<!DOCTYPE html>

<html>

<head>

    <title>Daftar Produk</title>

</head>

<body>

    <h1>Daftar Produk</h1>

    <ul>

        <?php foreach ($produk as $item): ?>

            <li><?= $item[‘nama’]; ?> – Rp <?= number_format($item[‘harga’], 0, ‘,’, ‘.’); ?></li>

        <?php endforeach; ?>

    </ul>

</body>

</html>

Penjelasan:

  • View ini akan menerima data $produk dari Controller dan menampilkannya sebagai list

STEP 3: Mengatur Routing

Selanjutnya, edit file app/config/Routes.php dan tambahkan baris kode berikut:

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

Penjelasan:

  • Route ini menghhubungkan URL /produk ke method index() dari Controller Produk.

STEP 4: Uji Coba

Lalu buka terminal dan jalankan perintah spark untuk menjalankan aplikasi di lokal development.

				
					php spark serve
				
			

Buka browser dan akses URL http://localhost:8080/produk, jika berhasil browser akan menampilkan daftar produk yang mengambil dari controller ke view.

buat-penerapan-mvc-sederhana-codeigniter4

Kesimpulan

Dari praktik sederhana MVC ini, kamu sudah mengenal dan mempraktikkan konsep dasar MVC (Model-View-Controller) di CodeIgniter 4.

  • Routing > Controller

Kamu menambahkan baris berikut di file app/Config/Routes.php: $routes->get(‘/produk’, ‘Produk::index’);

Bagian ini disebut sebagai routing. Artinya, ketika pengguna membuka URL http://localhost:8080/produk, permintaan itu akan diarahkan ke Controller bernama Produk dan menjalankan method index()

  • Controller > View

Di dalam controller Produk.php, kamu menuliskan: return view(‘produk_view’, $data);

Artinya setelah menerima request dari pengguna, controller akan menyiapkan data dan meneruskannya ke View bernama produk_view.php. View inilah yang bertugas menampilkan tampilan ke layar pengguna.

  • Mengirim Data dari Controller ke View

Di dalam controlller Produk.php tadi juga menyiapkan array data. Jadi, data tersebut yang dikirim ke View sebagai daftar produk. Ini adalah praktik dasar pengiriman data dari controller ke view menggunakan variabel.

Selanjutnya kamu bisa mengikuti seri artikel CodeIgniter 4 melalui menu sidebar di sebelah kiri, Sob!

Kalau ada yang masih bikin bingung, jangan ragu hubungi Tim Support Jagoan Hosting via Live Chat atau Open Ticket, Sob!

Related Posts
Cara Install CodeIgniter di Softaculous cPanel

Hai, Sobat Jagoan! Softaculous adalah fitur auto-installer yang biasanya tersedia di cPanel dan digunakan untuk memasang berbagai aplikasi web secara Read more

Cara Install CodeIgniter dengan Composer di cPanel Hosting

Hai, Sobat Jagoan! Saat kamu mengembangkan proyek CodeIgniter, menggunakan Composer adalah langkah terbaik. Selain mendapatkan versi resmi terbaru, kamu juga Read more

Clone Proyek CodeIgniter dari Remote Repository ke Hosting

Halo, Sobat! Remote repository adalah tempat penyimpanan proyek kamu di server Git yang bisa diakses dari mana saja melalui internet. Read more

Memahami Konsep Dasar CodeIgniter 4

Hai, Sobat Jagoan! Sebelum nyemplung lebih jauh dengan CodeIgniter versi 4, kamu perlu mengenal dan memahami konsep dasar CodeIgniter 4 Read more