Controller Pada Laravel 8

Halo teman-teman semua. apa kabar?. semoga dalam keadaan sehat dan bahagia. Kali ini kita akan membahas tentang controller pada laravel 8. Jika kamu ingin melihat materi lain nya, kunjungi sitemaps.
Pendahuluan
Framework PHP bernama laravel adalah framework yang menggunakan konsep MVC. Artinya memisahkan kode untuk Model, View dan Controller. Model sendiri berkaitan dengan kode program yang berkenaan dengan database. Sedangkan View adalah kode program yang berkenaan dengan tampilan atau template. Terakhir adalah controller yang akan kita bahas.
Pengertian Controller
Dari namanya saja jika diartikan adalah pengontrol. Controller adalah tempat untuk kode program yang berkaitan dengan pengendalian dan proses logika. Jika ada algoritma dalam aplikasi. Maka Controller tempatnya.
Sedangkan hubungan controller dengan model. Maupun controller dengan view. Dapat kamu lihat melalui ilustrasi gambar dibawah ini.

Membuat Controller
Sebelum membuat controller. Sebaiknya kamu sudah paham route. Saya anggap kamu sudah paham tentang route. Berikut ini tampilan contoh file controller bernama UserController.php.
- bwm_laravel
- app
- Http
- Controllers
- UserController.php
- Controllers
- Http
- app
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; class UserController extends Controller { // }
Jika kamu menggunakan vscode. Kamu bisa mengetikkan ini langsung dari terminal vscode. Namu jika menggunakan editor lain. Kamu bisa menggunakan command prompt. Jika menggunakan windows.
php artisan make:controller UserController
Maka file UserController.php beserta isinya akan dibuatkan oleh laravel.
Membuat Method di Controller
Untuk membuat method di controller caranya sama seperti membuat fungsi.
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; class UserController extends Controller { public function index(){ echo "UserController Method index"; } }
Menjalankan Method di Controller
Untuk menjalankan method di controller tentunya kita perlu memanggilnya di route. Berikut ini contoh route yang memanggil sebuah method di controller.
use App\Http\Controllers\UserController;
Route::get('/user', [UserController::class, 'index']);
Method index tersebut dipanggil dalam route di atas.
Memanggil View di Controller
Untuk memanggil view di controller berikut caranya.
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; class UserController extends Controller { public function index(){ return view('nama_view/file'); } }
Dengan mengembalikan nilai berupa method bernama view. Method tersebut dapat diisi satu atau beberapa parameter.
Memanggil View Dalam Sub Folder
Untuk membuat file tertata rapi terkadang kita membuat folder. Untuk memanggil file di dalam sub folder caranya menggunakan tanda penghubung titik “.”. Untuk lebih jelas nya perhatikan kode berikut.
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; class UserController extends Controller { public function index(){ return view('nama_folder.nama_view/file'); } }
Cara di atas berlaku untuk sub-sub folder berikutnya.
Passing Data dari Controller ke View
Dari ilustrasi konsep MVC di atas. Tentunya kita melihat adanya kemungkinan aliran data dari controller ke view. Berikut ini contoh sebuah nilai dalam variabel yang di passing ke view.
<?php namespace App\Http\Controllers; use Illuminate\Http\Request; class UserController extends Controller { public function index(){ $a="Halo"; return view('user.user_index',['halo' => $a]); } }
Untuk mengoper atau passing data dari controller cukup buat satu parameter lagi pada fungsi atau method view. Dimana sebelumnya hanya satu parameter. Kemudian pisahkan dengan tanda koma “,”. Jangan lupa, kirimkan data dalam bentuk array.
['halo' => $a, 'tes' => $b]
Untuk mengambil data tersebut ambil dengan menyebutkan nama index data. Kemudian tambahkan tanda $ di awal.
- $halo (benar)
- $tes (benar)
- $a dan $b (salah)
Jadi seperti itulah cara passing data ke view. Mulai dari pengiriman sampai cara mengambil data tersebut.
Penutup
Terima Kasih sudah membaca artikel ini. Jika artikel ini membantu kamu. Jangan lupa klik tombol share.
Sekian untuk materi kali ini. Jika kamu ingin kursus secara langsung, kami membuka kelas baru. Silahkan hubungi kontak kami di menu.
0 Komentar