Laravel — Cheat Sheet

Tag: laravel, php, backend, mvc

Livello: intermedio

TL;DR: Sintesi rapida su Laravel, architettura MVC e concetti fondamentali per lo sviluppo di applicazioni web.

Concetti chiave

Pattern architetturale MVC (Model-View-Controller)

Eloquent ORM per interazione con database e object mapping

Routing avanzato e raggruppamento

Middleware per filtrare richieste HTTP

Blade templating engine

Dependency injection e Service Container

Artisan CLI per generazione codice e task

Migrations e Seeders per controllo versione del database

Domande tipiche e risposte pronte

Q: Cos'è un Service Provider in Laravel?R: È il luogo principale dove le applicazioni Laravel vengono avviate (bootstrapped). Registrano servizi come view, middleware, ed event listener nel Service Container.

Q: Differenza tra get() e all() in Eloquent?R: all() recupera tutti i record di un modello, mentre get() è usato per eseguire una query (spesso dopo aver applicato clausole come where).

Insidie e errori comuni

N+1 query problem con Eloquent (risolvibile usando eager loading con with())

Inserimento massivo vulnerabile se $fillable non è configurato correttamente nel modello

Snippet e comandi

// Esempio di eager loading
$users = App\Models\User::with('posts')->get();

// Esempio di Route group
Route::middleware(['auth'])->group(function () {
    Route::get('/dashboard', function () {
        // ...
    });
});

Bash

# Esempi comandi Artisan
php artisan make:model Post -mcr
php artisan migrate:fresh --seed

Da ripassare

[ ] Ciclo di vita della richiesta

[ ] Policies e Gates per autorizzazioni

Riferimenti

Documentazione Ufficiale Laravel

Laracasts

Jarvis Interviews
Jarvis