Apa itu Laravel? — Laravel

PHP polosan = nulis dari nol: routing manual, query SQL mentah, validate input sendiri, hash password sendiri, kirim email sendiri. 1 fitur login = 200 baris…

Laravel adalah framework PHP: sekumpulan bagian siap pakai plus aturan di mana tiap jenis kode ditaruh. Bayangin dapur restoran. Pelayan membaca pesanan dan mengantarnya ke meja yang tepat (itu route), koki memasak (itu controller), gudang menyimpan bahan (itu model, datanya), dan bagian penyajian menata piring sebelum keluar (itu view, tampilannya). Dengan PHP polos, kamu membangun dapur itu sendiri dari nol. Dengan Laravel, dapurnya sudah jadi, kamu tinggal masak.

🧪 Tebakan cepat: di project Laravel yang baru dibuat, berapa file yang harus kamu ubah supaya http://127.0.0.1:8000/hello menjawab JSON: satu, tiga (route, controller, view), atau lima? Tebak dulu, jawabannya ada di bagian "Route pertamamu".

Kenapa pakai framework

PHP polos bisa membuat web, tapi semua hal kecil kamu tulis sendiri: mencocokkan alamat ke kode, menyusun query SQL, mengecek input form, menyimpan password dengan aman, mengirim email. Laravel sudah membawa semuanya:

Kebutuhan Di Laravel Dipelajari di
Alamat ke kode Routing Routing
Kode per fitur Controller Controller
Tampilan HTML Blade Blade Templating
Tabel database Migration dan Eloquent Migrasi, Eloquent
Cek input Validation Validasi
Tugas di belakang Queue dan Job Queue & Job

Laravel ditulis dengan bahasa PHP, dibuat Taylor Otwell sejak 2011. Versi yang dipakai di sini Laravel 13, yang butuh PHP 8.3 atau lebih baru. Laravel juga membawa Artisan, alat command line untuk membuat file, menjalankan server, dan banyak lagi. Semua perintahnya diawali php artisan.

Bikin project dan jalankan

Sepanjang track ini kita membangun satu app: Perpustakaan, untuk mencatat buku dan peminjamannya. Buat project-nya dengan Composer, lalu jalankan server-nya:

composer create-project laravel/laravel perpustakaan
cd perpustakaan
php artisan serve
   INFO  Server running on [http://127.0.0.1:8000].

  Press Ctrl+C to stop the server

Buka http://127.0.0.1:8000 dan kamu melihat halaman welcome bawaan Laravel. Ubah kode, simpan, lalu refresh: perubahannya langsung terlihat, server-nya gak perlu dimatikan.

Peta folder

Folder atau file Isinya
routes/web.php daftar alamat dan kode yang menjawabnya
app/Http/Controllers/ controller, satu class per fitur
app/Models/ model, satu class per tabel database
resources/views/ template Blade, file .blade.php
database/migrations/ resep membuat tabel
public/index.php pintu masuk: semua request lewat sini
.env pengaturan rahasia: kunci app, password database

Perjalanan satu request

Ini pola MVC (Model, View, Controller): tiap bagian punya tugasnya sendiri. Begini perjalanan satu request di app Perpustakaan nanti, saat kamu membuka GET /books/1:

Langkah Di mana Yang terjadi
1 public/index.php Laravel menyala dan membaca request-nya
2 routes/web.php route /books/{id} cocok, id = 1
3 BookController@show controller dipanggil dengan $id = 1
4 Model Book data buku nomor 1 diambil dari database
5 View books.show Blade menyusun HTML-nya
6 Response browser menerima 200 OK dan halaman "Laskar Pelangi"

Kalau gak ada route yang cocok, misalnya GET /tentang, langkah 3 sampai 5 gak pernah jalan: Laravel langsung menjawab 404 dengan halaman bertuliskan 404 | Not Found.

Route pertamamu

Route paling sederhana gak butuh controller atau view. Tambahkan ini di routes/web.php:

<?php

use Illuminate\Support\Facades\Route;

Route::get('/hello', function () {
    return response()->json(['message' => 'Halo dari Laravel!']);
});

Buka http://127.0.0.1:8000/hello dan browser menampilkan {"message":"Halo dari Laravel!"}. Jadi cukup satu file, routes/web.php. Itu jawaban tebakannya. Controller dan view baru dibutuhkan saat kodenya mulai banyak.

Simulator latihan menjalankan route-mu lalu mencetak transkripnya: GET /hello → 200, lalu body JSON-nya di baris berikutnya.

⚠️ Jebakan yang sering ketemu

TL;DR: Laravel adalah framework PHP yang sudah membawa routing, controller, Blade, database (Eloquent), validasi, dan queue. Buat project dengan composer create-project laravel/laravel perpustakaan, jalankan dengan php artisan serve, lalu buka http://127.0.0.1:8000. Polanya MVC: route mencocokkan alamat, controller bekerja, model memegang data, view menyusun tampilan. Alamat tanpa route dijawab 404 | Not Found. Satu Route::get('/hello', ...) di routes/web.php yang mengembalikan response()->json([...]) sudah cukup untuk endpoint pertamamu.

Yang akan kamu pelajari