Codeigniter 4.x Tampilkan View

Mudahnya View merupakan tampilan halaman web seperti header, footer, sidebar, dll yang biasanya di dalamnya memuat kode html, php, css, dll. View tidak dapat ditampilkan secara langsung, mereka harus dipanggil oleh pengontrol. Ingat bahwa dalam kerangka MVC, Controller bertindak sebagai pengontrol halaman, sehingga bertanggung jawab untuk memanggil tampilan tertentu.

Jika Anda belum membaca halaman Controllers, Anda harus melakukannya sebelum melanjutkan. 

Membuat View

Buat file bernama app/Views/blog_view.php dan masukkan kode berikut : 

				
					<html>
    <head>
        <title>My Blog</title>
    </head>
    <body>
        <h1>Welcome to my Blog!</h1>
    </body>
</html>
				
			
Menyiapkan Route

Buka file konfigurasi route app/Config/Routes.php tambahkan baris berikut :

				
					$routes->get('blog', 'Blog::index');
				
			
Menampilkan View

Buat file Controller bernama app/Controllers/Blog.php, dan masukan kode berikut :

				
					<?php

namespace App\Controllers;

use CodeIgniter\Controller;

class Blog extends Controller
{
    public function index()
    {
        return view('blog_view');
    }
}
				
			

Di browser hasilnya akan sebagai berikut :

Menampilkan Multiple View

Pada penerapan umumnya Controller akan mengangani beberapa View. Jika lebih dari satu panggilan terjadi mereka akan ditambahkan bersama-sama. Misalnya, Anda mungkin ingin memiliki tampilan header, tampilan menu, tampilan konten, dan tampilan footer. Contohnya seperti di bawah ini :

				
					<?php

namespace App\Controllers;

use CodeIgniter\Controller;

class Page extends Controller
{
    public function index()
    {
        $data = [
            'page_title' => 'Your title',
        ];

        return view('header')
            . view('menu')
            . view('content', $data)
            . view('footer');
    }
}
				
			
Menambahkan Data Dinamis ke dalam View

Data diteruskan dari Controller ke View melalui parameter kedua di dalam fungsi view(). Berikut ini contohnya :

app/Controllers/Blog.php

				
					<?php

namespace App\Controllers;

use CodeIgniter\Controller;

class Blog extends Controller
{
    public function index()
    {
        $data = [
            'todo_list' => ['Clean House', 'Call Mom', 'Run Errands'],
            'title'     => 'My Real Title',
            'heading'   => 'My Real Heading',
        ];

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

app/Views/blog_view.php

				
					<html>
<head>
    <title><?= esc($title) ?></title>
</head>
<body>
    <h1><?= esc($heading) ?></h1>

    <h3>My Todo List</h3>

    <ul>
    <?php foreach ($todo_list as $item): ?>

        <li><?= esc($item) ?></li>

    <?php endforeach ?>
    </ul>

</body>
</html>
				
			

Buka http://domain_anda/blog hasilnya sbb

Leave a Reply

Your email address will not be published.Required fields are marked *

13 + three =