0Pricing
PHP Academy · Lekcja

CRUD z Eloquent

Twórz, odczytuj, aktualizuj i usuwaj rekordy za pomocą metod Eloquent

CRUD z Eloquent to bezpłatna lekcja PHP Academy na CoddyKit. To lekcja 2 z 4. Możesz przeczytać całą lekcję poniżej za darmo — a potem ćwiczyć ją interaktywnie w przeglądarce z wbudowanym edytorem kodu i tutorem AI dostępnym 24/7. To część ścieżki edukacyjnej PHP Academy, a Twój postęp synchronizuje się między webem a aplikacją CoddyKit. Kurs PHP Academy zawiera 4 lekcji w sumie.

Tworzenie — save()

Utwórz instancję modelu, ustaw atrybuty i wywołaj save().

<?php
$post = new Post();
$post->title = "Hello World";
$post->body  = "My first post";
$post->save(); // INSERT INTO posts ...

Tworzenie — create()

Model::create() dodaje wiersz w jednej linii za pomocą masowego przypisywania. Wymaga ustawienia $fillable.

<?php
$post = Post::create([
    "title" => "Hello World",
    "body"  => "My first post",
    "user_id" => auth()->id(),
]);

firstOrCreate i updateOrCreate

firstOrCreate() wyszukuje pasujący rekord lub go tworzy. updateOrCreate() wyszukuje i aktualizuje rekord albo go tworzy.

<?php
// Find or create:
$tag = Tag::firstOrCreate(["name" => "PHP"]);

// Update or create:
$setting = Setting::updateOrCreate(
    ["key" => "theme"],
    ["value" => "dark"]
);

Odczyt — all()

Pobierz wszystkie wiersze jako kolekcję Eloquent.

<?php
$posts = Post::all(); // SELECT * FROM posts
foreach ($posts as $post) {
    echo $post->title;
}

Odczyt — find()

Znajdź rekord na podstawie klucza głównego. Jeśli rekord nie zostanie znaleziony, metoda zwraca null. findOrFail() zgłasza wyjątek 404, jeśli rekordu nie znaleziono.

<?php
$post = Post::find(1);
$post = Post::findOrFail(1); // throws ModelNotFoundException if missing

Odczyt — where()

Filtruj rekordy za pomocą klauzul where(). Łącz wiele warunków.

<?php
$published = Post::where("is_published", true)
                 ->where("user_id", $userId)
                 ->orderBy("created_at", "desc")
                 ->get();

Aktualizacja — save()

Zmodyfikuj atrybuty istniejącego modelu i wywołaj save() — zostanie wygenerowane zapytanie UPDATE.

<?php
$post = Post::findOrFail(1);
$post->title = "Updated Title";
$post->save(); // UPDATE posts SET title=... WHERE id=1

Aktualizacja — update()

Zaktualizuj masowo wiele rekordów spełniających warunki zapytania za pomocą jednego wywołania SQL.

<?php
Post::where("user_id", $userId)
    ->update(["is_published" => false]);

Usuwanie — delete()

Usuń pobraną instancję modelu.

<?php
$post = Post::findOrFail(1);
$post->delete(); // DELETE FROM posts WHERE id=1

Usuwanie — destroy()

Post::destroy($id) usuwa rekord na podstawie klucza głównego bez wcześniejszego pobierania modelu.

<?php
Post::destroy(1);
Post::destroy([1, 2, 3]); // delete multiple

Stronicowanie

Użyj paginate(), aby zwrócić obiekt stronicowania z automatycznym zastosowaniem LIMIT/OFFSET.

<?php
$posts = Post::latest()->paginate(15);
// In Blade: {{ $posts->links() }}

Podsumowanie

Eloquent udostępnia create() / save() do wstawiania, find() / where() do odczytu, save() / update() do aktualizacji oraz delete() / destroy() do usuwania.

Szybkie sprawdzenie

Która metoda zgłasza wyjątek, jeśli rekord nie zostanie znaleziony?

Często zadawane pytania

Czy lekcja „CRUD z Eloquent” jest bezpłatna?

Tak — pełny tekst „CRUD z Eloquent” jest dostępny za darmo tutaj w sieci. Aby ćwiczyć ją interaktywnie (wbudowany edytor kodu i tutor AI dostępny 24/7) i odblokować resztę kursu PHP Academy, przejdź na CoddyKit PRO. Kurs PHP Academy zawiera 4 lekcji w sumie.

Co nauczysz się w „CRUD z Eloquent”?

Twórz, odczytuj, aktualizuj i usuwaj rekordy za pomocą metod Eloquent Ćwiczysz PHP Academy z praktycznym kodem, który uruchamiasz bezpośrednio w przeglądarce, a tutor AI dostępny 24/7 odpowiada na Twoje pytania podczas pracy nad lekcją.

Czy potrzebuję doświadczenia, aby zacząć PHP Academy?

Nie wymagamy żadnego doświadczenia. PHP Academy w CoddyKit jest strukturyzowany dla początkujących i zaawansowanych użytkowników, więc możesz zacząć tutaj lub od początku i uczyć się w swoim tempie. To lekcja 2 z 4.

Ile czasu zajmuje lekcja „CRUD z Eloquent”?

Większość lekcji CoddyKit trwa około 5–10 minut. Każda lekcja to mały, interaktywny krok, dzięki czemu robisz systematyczne postępy i zawsze wracasz dokładnie do tego samego miejsca — na webie i w aplikacji.

Czy mogę pisać i uruchamiać kod w tej lekcji PHP Academy?

Tak. Każda lekcja PHP Academy zawiera wbudowany edytor kodu, więc piszesz i uruchamiasz prawdziwy kod bezpośrednio w przeglądarce i od razu otrzymujesz sprzężenie zwrotne od AI — bez konfiguracji na komputerze.

Wszystkie lekcje w tym kursie

  1. Modele Eloquent i migracje
  2. CRUD z Eloquent
  3. Relacje Eloquent
  4. Eager loading i zakresy zapytań
← Powrót do PHP Academy