返回 Skill 列表
extension
分类: 开发与工程无需 API Key

laravel-development

掌握Laravel 11,包括Eloquent ORM、路由、中间件、队列、测试以及现代PHP开发模式。

person作者: jakexiaohubgithub

Laravel Development

Build modern PHP applications with Laravel's elegant syntax, Eloquent ORM, and production-ready features.

Core Patterns

Controller

<?php

namespace App\Http\Controllers;

use App\Models\User;
use App\Http\Requests\StoreUserRequest;
use Illuminate\Http\JsonResponse;

class UserController extends Controller
{
    public function index(): JsonResponse
    {
        $users = User::all();
        return response()->json($users);
    }

    public function store(StoreUserRequest $request): JsonResponse
    {
        $user = User::create($request->validated());
        return response()->json($user, 201);
    }

    public function show(User $user): JsonResponse
    {
        return response()->json($user);
    }
}

Model

<?php

namespace App\Models;

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

class User extends Model
{
    protected $fillable = ['name', 'email'];

    protected $casts = [
        'email_verified_at' => 'datetime',
    ];

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

    public function scopeActive($query)
    {
        return $query->where('active', true);
    }
}

Service

<?php

namespace App\Services;

use App\Models\User;
use Illuminate\Support\Facades\Hash;

class UserService
{
    public function createUser(array $data): User
    {
        return User::create([
            'name' => $data['name'],
            'email' => $data['email'],
            'password' => Hash::make($data['password']),
        ]);
    }
}

Routes

Route::middleware('auth:sanctum')->group(function () {
    Route::apiResource('users', UserController::class);
});

Best Practices

  1. Use Eloquent relationships
  2. Implement form requests for validation
  3. Use service classes for business logic
  4. Leverage Laravel queues
  5. Implement proper authentication
  6. Use middleware for cross-cutting concerns
  7. Write feature and unit tests
  8. Use Laravel best practices

Resources

  • https://laravel.com/docs