CodePengontrol dan Perutean Tampilan Igniter: Pelajari dengan Contoh

โšก Ringkasan Cerdas

Kredensial mikro CodeContoh Igniter ini membangun aplikasi kecil untuk menunjukkan bagaimana routing, controller, dan view bekerja bersama. Sebuah proyek baru dibuat dengan Composer, dan rute dipetakan. URLke metode pengontrol, dan setiap metode memuat tampilan yang mengembalikan HTML ke browser.

  • ๐Ÿงญ Rute: Rute sesuai dengan URL ke metode pengontrol, dan yang tidak cocok URL Menampilkan kesalahan halaman tidak ditemukan.
  • ๏ธ Pengontrol: Metode controller merespons sebuah route, meminta data, dan mengembalikan sebuah view.
  • ๏ธ views: Sebuah tampilan menggabungkan HTML, CSS, dan JavaSkrip untuk menampilkan hasil kepada pengguna.
  • ๐Ÿ“ฆ Pengaturan Proyek: Composer membuat proyek dan server PHP bawaan menjalankannya secara lokal.
  • ๐Ÿ  Rute Default: default_controller mengatur halaman beranda, dan 404_override mengatur halaman kesalahan khusus.
  • โž• Rute Khusus: Sebuah rute seperti about-us dipetakan ke metode about_us pada controller Welcome.
  • ๐Ÿ” Alur Penuh: URL untuk mengarahkan ke controller ke view, lalu HTML kembali ke browser.

CodePengontrol dan Tampilan Igniter

Dalam tutorial ini, Anda akan mempelajari topik-topik berikut:

  • Rute โ€“ routing bertanggung jawab untuk menanggapi URL permintaan. Perutean cocok dengan URL ke rute yang telah ditentukan sebelumnya. Jika tidak ditemukan rute yang cocok, CodeIgniter melempar pengecualian halaman tidak ditemukan.
  • controller โ€“ Rute terhubung ke controller. Controller menghubungkan model dan view. Mereka meminta data dan logika bisnis dari model dan mengembalikan hasilnya dalam tampilan view. Setelah itu, URL Setelah dicocokkan dengan sebuah rute, data tersebut diteruskan ke fungsi publik pengontrol. Fungsi ini berinteraksi dengan sumber data dan logika bisnis, lalu mengembalikan tampilan yang menampilkan hasilnya.
  • views โ€“ pandangan bertanggung jawab untuk presentasi. Tampilan biasanya merupakan kombinasi HTML, CSS, dan JavaSkrip. Bagian ini bertanggung jawab untuk menampilkan halaman web kepada pengguna. Biasanya, data yang ditampilkan diambil dari basis data atau sumber data lain yang tersedia.

Cara Membuat Baru CodeProyek Igniter

Kita akan menggunakan Composer untuk membuat proyek baru. Kita akan menggunakan server bawaan PHP, jadi tidak perlu perangkat lunak tambahan seperti... ApacheDalam tutorial ini, kita akan menggunakan Windows sistem operasi, jadi kami telah membuat folder Sites di drive C. Anda dapat menggunakan direktori apa pun yang sesuai untuk Anda.

Buka command line atau terminal dan jalankan perintah berikut:

cd C:\Sites

Sekarang kita akan membuat sebuah CodeBuat proyek Igniter menggunakan Composer. Jalankan perintah berikut:

composer create-project CodeIgniter/framework ci-app

Sini:

  • Perintah di atas membuat yang baru CodeProyek Igniter versi 3, menggunakan rilis stabil terbaru (3.1.9 pada saat penulisan), ke dalam direktori bernama ci-app.

Setelah perintah selesai dijalankan, Anda akan melihat hasil yang mirip dengan berikut ini di terminal:

Komposer menciptakan karya baru CodeProyek Igniter

Jalankan perintah berikut untuk masuk ke direktori proyek ci-app yang baru dibuat:

cd ci-app

Sekarang jalankan server web bawaan PHP:

php -S localhost:3000

Sini:

  • Perintah di atas memulai server PHP bawaan yang berjalan pada port 3000.

Buka peramban web dan kunjungi alamat berikut. URL: http://localhost:3000/Anda akan mendapatkan halaman berikut:

CodeHalaman selamat datang default Igniter

Jika Anda dapat melihat halaman di atas, selamat, Anda telah berhasil menginstal. CodeAlat penyalaHalaman ini dirender oleh view yang terletak di application/views/welcome_message.php, dan controller yang bertanggung jawab terletak di application/controllers/Welcome.php.

CodePerutean Igniter

Untuk saat ini, aplikasi kami hanya memiliki satu URL, yang merupakan halaman beranda. Di bagian ini, kita akan menyesuaikan bagian beranda dan membuat beberapa hal baru. URLyang merespons berbagai permintaan.

Mari kita mulai dengan rute halaman beranda. Buka file rute di jalur berikut:

application/config/routes.php

Anda akan melihat konten berikut:

$route['default_controller'] = 'welcome';
$route['404_override'] = '';
$route['translate_uri_dashes'] = FALSE;

Sini:

  • $route['default_controller'] = 'welcome'; mendefinisikan controller default yang merespons permintaan URI.
  • $route['404_override'] = โ€; memungkinkan Anda untuk menentukan rute khusus untuk kesalahan 404. Kesalahan 404 terjadi ketika halaman tidak ditemukan. CodeIgniter memiliki penanganan default untuk kesalahan tersebut, tetapi Anda dapat menentukan sendiri jika Anda mau.
  • $route['translate_uri_dashes'] = FALSE; memungkinkan Anda menerjemahkan tanda hubung menjadi garis bawah. Kita akan membahas opsi ini ketika kita melihat cara kerja rute di CodeAlat penyala.

Sekarang mari kita lihat metode controller yang bertanggung jawab untuk menampilkan halaman beranda yang kita lihat saat membuka aplikasi. http://localhost:3000/Buka file berikut:

application/controllers/Welcome.php

Anda akan melihat kode berikut:

<?php
defined('BASEPATH') OR exit('No direct script access allowed');

class Welcome extends CI_Controller {

public function index()
{
$this->load->view('welcome_message');
}
}

Sini:

  • `defined('BASEPATH') OR exit('No direct script access allowed');` melindungi dari akses langsung ke kelas controller tanpa melalui file index.php. Dalam paradigma MVC, semua permintaan memiliki satu titik masuk tunggal, yang untuk CodeIgniter adalah index.php. Kode ini memblokir semua permintaan yang tidak berasal dari index.php.
  • class Welcome extends CI_Controller {โ€ฆ} mendefinisikan kelas Welcome yang memperluas kelas induk CI_Controller.
  • Fungsi publik index() mendefinisikan fungsi publik yang dipanggil secara default saat Anda membuka halaman beranda.
  • $this->load->view('welcome_message'); memuat tampilan welcome_message, yang terletak di application/views/welcome_message.php.

Sejauh ini kita hanya mengeksplorasi apa yang tersedia secara default. CodeIgniter. Sekarang mari kita lakukan beberapa perubahan. Kita akan membuat halaman beranda kita sendiri dan mengganti halaman default. Buat file baru di application/views/home.php dan tambahkan kode berikut:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>Hello CodeIgniter!</title>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bulma/0.7.2/css/bulma.min.css">
<script defer src="https://use.fontawesome.com/releases/v5.3.1/js/all.js"></script>
</head>
<body>
<section class="section">
<div class="container">
<h1 class="title">
CodeIgniter Hello World
</h1>
</div>
</section>
</body>
</html>

Sini: Kode HTML di atas memuat kerangka kerja CSS Bulma dan Font Awesome dari CDN dan membuat dokumen HTML yang sangat sederhana. Kode tersebut menerapkan aturan CSS sederhana dari kerangka kerja CSS Bulma.

Buka yang berikut ini URL di peramban Anda: http://localhost:3000/Anda akan melihat hal berikut:

Kustom CodeHalaman utama Igniter

Bagus, kita telah berhasil memodifikasi halaman beranda. Selanjutnya, mari kita tentukan rute kita. Anggaplah aplikasi kita juga perlu menampilkan halaman tentang kami.

Buat Rute

Buka file routes di application/config/routes.php dan tambahkan rute berikut:

$route['about-us'] = 'welcome/about_us';

Sini:

  • Ketika seorang pengunjung datang berkunjung ke URL /tentang kami, kami memberi instruksi CodeIgniter akan mencari controller Welcome dan menjalankan metode about_us.

Buat Pengontrol

Sekarang mari kita definisikan metode controller about_us. Buka application/controllers/Welcome.php dan tambahkan metode berikut:

public function about_us(){
$this->load->view('about_us');
}

Sini:

  • Kode di atas mendefinisikan sebuah fungsi about_us dan memuat sebuah tampilan about_us.

Buat Tampilan

Sekarang mari kita buat tampilan yang baru saja kita sebutkan. Buat file baru bernama about_us.php di application/views/about_us.php dan tambahkan kode berikut:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>About CodeIgniter!</title>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/bulma/0.7.2/css/bulma.min.css">
<script defer src="https://use.fontawesome.com/releases/v5.3.1/js/all.js"></script>
</head>
<body>
<section class="section">
<div class="container">
<h1 class="title">
About us yap...
</h1>
</div>
</section>
</body>
</html>

Kita sudah siap. Buka yang berikut ini URL di peramban web Anda: http://localhost:3000/index.php/about-usAnda akan melihat halaman berikut:

CodeHalaman tentang kami Igniter

Jika Anda dapat melihat halaman di atas, selamat, Anda telah berhasil membuat aplikasi sederhana di CodeAlat penyala.

Pertanyaan Umum Demo Slot

Entri rute memetakan URL segmen ke pengontrol dan metode, seperti 'welcome/about_us'. Ketika itu URL diminta, CodeIgniter menjalankan metode bernama tersebut, yang memuat dan mengembalikan sebuah tampilan (view).

Ini mengatur pengontrol yang menangani root situs ketika tidak ada yang spesifik. URL diberikan. Dalam contoh ini, 'welcome' berarti halaman beranda disajikan oleh metode index dari controller Welcome.

Tidak. Server PHP bawaan, yang dijalankan dengan php -S localhost:3000, sudah cukup untuk menjalankan contoh ini secara lokal. Apache atau Nginx hanya diperlukan untuk penerapan di lingkungan produksi.

Ya. Dari deskripsi sebuah halaman, AI dapat menulis entri rute, metode pengontrol, dan tampilan yang sesuai, dan seterusnya.ping Nama-nama tersebut konsisten. Periksa jalur-jalur tersebut terhadap milik Anda. CodeVersi Igniter.

Contoh ini menggunakan CodeIgniter 3, yang menyimpan controller dan view di bawah application/. CodeIgniter 4 merestrukturisasi direktori dan namespace, sehingga jalur dan sintaksnya berbeda di proyek-proyek yang lebih baru.

Ringkaslah postingan ini dengan: