Artisan adalah pintu masuk utama kita ke aplikasi Laravel dari terminal: membangkitkan boilerplate, menjalankan migrasi, menguras cache, sampai bereksperimen lewat tinker. Dasar-dasarnya sudah kita bahas di chapter Mengenal Artisan ; chapter ini berfungsi sebagai kartu contekan padat yang bisa dibuka ulang tanpa harus membuka dokumentasi. Semua perintah dan flag di bawah diverifikasi pada Laravel 13.36.0, dan setiap flag yang kita cantumkan adalah flag yang benar-benar ada di output --help-nya.

Cara membaca kartu ini perlu disepakati dulu. Kolom flag penting hanya memuat flag yang paling sering dibutuhkan — bukan seluruh opsi; daftar lengkapnya selalu bisa dilihat dengan php artisan help <perintah>. Selain itu, php artisan list tanpa argumen menampilkan seluruh perintah terpasang, termasuk yang ditambahkan paket pihak ketiga, sehingga menjadi cara tercepat menemukan nama perintah yang terlupa.

Keluarga make:* #

Perintah make:* membangkitkan class dari stub sehingga kita tidak mengetik kerangka file secara manual. Tabel ini merangkum yang paling sering dipakai sehari-hari.

PerintahFungsiFlag penting
make:controllerController baru--resource, --api, -i (invokable), -m= (model), -R (form request)
make:modelModel Eloquent-m (migration), -f (factory), -s (seeder), --policy, -a (semuanya)
make:migrationFile migration--create=tabel, --table=tabel
make:requestForm request class—
make:jobJob untuk queue--sync
make:eventEvent class—
make:listenerEvent listener--event=NamaEvent
make:observerObserver model--model=NamaModel
make:commandPerintah artisan kustom--command="nama:perintah"
make:seederSeeder class—
make:factoryModel factory--model=NamaModel
make:middlewareHTTP middleware—
make:policyPolicy otorisasi--model=NamaModel
make:mailMailable class-m (markdown template)
make:notificationNotification class—
make:ruleRule validasi berbasis object—
make:testTest class-u (unit), --pest
make:componentKomponen Blade--view (anonymous), --inline

Pola favorit kami adalah php artisan make:model Tugas -mf: satu perintah menghasilkan model, migration, dan factory sekaligus. Untuk controller CRUD penuh, make:model Tugas -a --api menyiapkan hampir semua class yang dibutuhkan endpoint API. Satu kebiasaan kecil yang berdampak besar: selalu nyalakan php artisan serve dan php artisan tinker di dua tab terminal terpisah sejak awal mengerjakan fitur — serve untuk melihat hasil di browser, tinker untuk mencoba query dan logika kecil tanpa harus menulis file sementara.

Migrasi dan Database #

PerintahFungsiFlag penting
migrateJalankan migration yang belum diproses--force, --seed, --pretend, --step
migrate:freshHapus semua tabel lalu migrasi ulang dari nol--seed
migrate:rollbackBatalkan batch migration terakhir--step=2, --batch=
migrate:resetRollback seluruh migration--force
migrate:refreshReset lalu migrasi ulang (data hilang)--seed
migrate:statusDaftar migration beserta status batchnya—
db:seedIsi database lewat seeder--class=, --force
db:showRingkasan koneksi dan tabel database--counts, --json
db:table nama_tabelStruktur kolom satu tabel—

Perbedaan yang paling sering menipu: migrate:fresh menjatuhkan seluruh tabel dulu, sedangkan migrate:refresh berarti reset + migrate — keduanya menghapus data, jadi jangan pernah menjalankannya di database produksi. Untuk database pengembangan SQLite lokal, kombinasi harian kami adalah migrate:fresh --seed yang memulihkan kondisi awal berikut data contoh dalam hitungan detik. Untuk detail siklus ini, rujuk Migration Rollback dan Database Seeding .

Route, Cache, dan Optimasi #

PerintahFungsiFlag penting
route:listDaftar semua route terdaftar--path=, --name=, --method=, --except-vendor, --json
route:cache / route:clearCache / hapus cache route—
cache:clearKosongkan application cache—
cache:forget kunciHapus satu item cache[store]
config:cache / config:clearCache / hapus cache konfigurasi—
config:show kunciTampilkan nilai config saat ini—
view:cache / view:clearPrakompilasi / hapus view terkompilasi—
optimizeCache config, events, routes, sekaligus views—
optimize:clearHapus semua cache hasil optimize—

route:list adalah alat debugging routing paling sering kita pakai — cara membaca outputnya dibedah di Route List dan Debugging . Di sisi lain, optimize dan optimize:clear adalah pasangan wajib saat deployment: yang pertama membangun semua cache sekaligus, yang kedua meruntuhkannya ketika kita perlu kembali ke keadaan bersih. Perintah db:show --counts dan db:table melengkapi kelompok ini sebagai kaca pembesar struktur database tanpa membuka klien SQL.

Queue, Tinker, dan Utilitas #

PerintahFungsiFlag penting
queue:workProses job dari queue--queue=, --tries=, --timeout=, --memory=
queue:retry id|allUlangi job yang gagal—
queue:failedDaftar job gagal—
queue:flushHapus seluruh catatan job gagal—
queue:restartMinta worker memuat ulang kode terbaru—
tinkerREPL interaktif dengan aplikasi termuat—
serveDevelopment server PHP--port=, --host=
aboutRingkasan environment aplikasi--only=drivers
key:generateSetel APP_KEY--show
storage:linkBuat symlink public/storage—
down / upMode maintenance aktif / nonaktif--secret=, --retry=
testJalankan test suite--filter=, --parallel

Untuk memastikan environment aplikasi berperilaku seperti dugaan kita, about adalah perintah diagnosis tercepat. Berikut hasil nyatanya di sandbox Course ini:

bash
php artisan about --only=drivers

Output yang Dihasilkan:

text

  Drivers ....................................................................
  Broadcasting ........................................................... log
  Cache ............................................................. database
  Database ............................................................ sqlite
  Logs ........................................................ stack / single
  Mail ................................................................... log
  Queue ............................................................. database
  Session ........................................................... database

Satu blok ini langsung memperlihatkan driver cache, database, mail, queue, dan session yang sedang aktif — bila salah satu barisnya tidak sesuai harapan, kita tahu harus ke config/ yang mana.

Kartu contekan artisan ini meliputi kerangka aplikasi dan infrastrukturnya. Setelah class-class tersebut lahir, isi sehari-harinya adalah bekerja dengan model — topik kartu contekan berikutnya: Referensi Eloquent .