LARAVEL

Învață Laravel: comenzi explicate cu exemple

19 comenzi 8 categorii

Laravel, creat de Taylor Otwell, este cel mai popular, sofisticat și apreciat framework web din întregul ecosistem PHP modern. Cunoscut pentru sintaxa sa extrem de expresivă și elegantă („The PHP Framework for Web Artisans”), Laravel a transformat dezvoltarea web în PHP dintr-o serie de scripturi disparate într-o experiență modernă, plăcută și de nivel enterprise.

Lansat cu o structură complet simplificată și ultra-rapidă, Laravel 11 a eliminat fișierele de configurare redundante, oferind o experiență minimalistă (streamlined application structure), suport nativ pentru PHP 8.2/8.3+, un motor ORM de referință mondială (Eloquent ORM), un sistem integrat de cozi asincrone (Queues & Jobs) și o suită completă de autentificare (Laravel Sanctum, Breeze).

Arhitectura MVC și Ciclul de Viață al unei Cereri în Laravel 11
# [Cerere HTTP de la Utilizator]
#            │
#            ▼
# [public/index.php] ──► [bootstrap/app.php] (Configurare minimalistă în Laravel 11)
#                               │
#                               ▼
#                    [Middleware Pipeline] (CORS, Sesiuni, Autentificare Sanctum)
#                               │
#                               ▼
#                    [routes/web.php / routes/api.php]
#                               │
#                               ▼
# ┌─────────────────────────────────────────────────────────────┐
# │ Controller (App\Http\Controllers)                           │
# │ - Validează datele cu Form Requests                         │
# │ - Apelează logica de afaceri                                │
# └────────────────────────────┬────────────────────────────────┘
#                              │
#                              ▼
# ┌─────────────────────────────────────────────────────────────┐
# │ Eloquent Model (App\Models)                                 │
# │ - Interogare fluentă a bazei de date (Postgres/MySQL)       │
# │ - Relații avansate (hasMany, belongsTo, morphTo)            │
# └────────────────────────────┬────────────────────────────────┘
#                              │
#                              ▼
#       [Răspuns HTTP JSON (API) sau View Blade/Inertia]

Pilonii Tehnologici ai Laravel 11

Instrument Laravel Mecanism Cheie Avantaj în Producție
Eloquent ORM Implementare de top a modelului Active Record cu relații intuitive și scope-uri de căutare. Interogări lizibile, sigure împotriva SQL Injection și încărcare eficientă a relațiilor (Eager Loading).
Artisan CLI Linie de comandă puternică pentru generare de cod, migrații de schemă și sarcini programate (Schedule). Automatizează complet rutina dezvoltării (php artisan make:model, php artisan migrate).
Queues & Workers Sistem unificat de cozi asincrone peste Redis, Amazon SQS sau baze de date. Procesare rapidă a sarcinilor grele în fundal (emailuri, procesare plăți) fără a încetini utilizatorul.
Laravel Sanctum Sistem de autentificare hibrid ușor pentru SPA-uri (cookie-uri sesiuni sigure) și API tokens. Protecție completă a endpoint-urilor mobile și frontend fără complexitatea unui server OAuth complet.
Cod Idiomatic Eloquent și Rutare în Laravel 11
// routes/api.php
use App\Models\Order;
use Illuminate\Http\Request;
use Illuminate\Support\Facades\Route;

Route::middleware('auth:sanctum')->get('/orders', function (Request $request) {
    // Eager loading al relației 'items' pentru a elimina problema N+1:
    return Order::with('items')
        ->where('user_id', $request->user()->id)
        ->where('status', 'PAID')
        ->latest()
        ->paginate(15);
});

// app/Models/Order.php
namespace App\Models;

use Illuminate\Database\Eloquent\Model;
use Illuminate\Database\Eloquent\Relations\HasMany;

class Order extends Model
{
    protected $fillable = ['user_id', 'total_amount', 'status'];

    public function items(): HasMany
    {
        return $this->hasMany(OrderItem::class);
    }
}

Arhitectură & Service Container 1 comandă

routing 3 comenzi

Eloquent ORM & Baze de date 1 comandă

Cozi & Procesare Asincronă 1 comandă

API & Autentificare Sanctum 1 comandă

artisan 3 comenzi

eloquent 4 comenzi

services 5 comenzi