0Pricing
PHP Academy · Ders

Denetleyiciler ve Eylemler

artisan ile denetleyiciler oluşturun ve istekleri eylem metotlarında işleyin.

Denetleyiciler ve Eylemler, CoddyKit'te ücretsiz bir PHP Academy dersidir. Bu, 4 dersinin 3. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, PHP Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. PHP Academy kursu toplamda 4 dersten oluşur.

Denetleyici Nedir?

Denetleyici, ilgili istek işleme mantığını gruplandırır. Rota dosyalarındaki kapanışlar yerine işlemleri denetleyici yöntemlerine devredersiniz.

Denetleyici Oluşturma

Bir denetleyici için iskelet oluşturmak üzere Artisan'ı kullanın.

$ php artisan make:controller UserController
$ php artisan make:controller PostController --resource

Temel Denetleyici

Bir denetleyici Controller sınıfını genişletir ve her rota işlemi için herkese açık yöntemlere sahiptir.

<?php
namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Models\User;

class UserController extends Controller
{
    public function index(): \Illuminate\View\View
    {
        $users = User::all();
        return view("users.index", compact("users"));
    }
}

İsteğe Erişme

İşlem yönteminde Illuminate\Http\Request tür belirtimi kullanın — Laravel bunu otomatik olarak ekler.

<?php
public function store(Request $request): \Illuminate\Http\RedirectResponse
{
    $name  = $request->input("name");
    $email = $request->input("email");
    User::create(["name" => $name, "email" => $email]);
    return redirect()->route("users.index");
}

Form Doğrulama

Girdiyi doğrulamak için $request->validate() kullanın. Doğrulama başarısız olursa Laravel sizi hatalarla birlikte otomatik olarak geri yönlendirir.

<?php
public function store(Request $request): \Illuminate\Http\RedirectResponse
{
    $validated = $request->validate([
        "name"  => "required|string|max:255",
        "email" => "required|email|unique:users",
    ]);
    User::create($validated);
    return redirect()->route("users.index");
}

Kaynak Denetleyicisi Yöntemleri

Bir kaynak denetleyicisinde 7 geleneksel yöntem bulunur: index, create, store, show, edit, update, destroy.

Tek İşlemli Denetleyiciler

Çağrılabilir denetleyicilerin tek bir __invoke() yöntemi vardır — tam olarak tek bir iş yapan işlemler için idealdir.

<?php
class SendWelcomeEmail extends Controller
{
    public function __invoke(User $user): void
    {
        Mail::to($user)->send(new WelcomeMail($user));
    }
}
// Route:
Route::post("/users/{user}/welcome", SendWelcomeEmail::class);

Denetleyici Ara Katmanı

Ara katmanı belirli işlemlere kurucudaki middleware() yöntemini kullanarak uygulayın.

<?php
public function __construct()
{
    $this->middleware("auth")->except(["index", "show"]);
}

Bağımlılıkların Eklenmesi

İşlem yöntemi parametrelerinde hizmetlere tür belirtimi ekleyin — Laravel bunları hizmet kapsayıcısından çözümler.

<?php
public function store(Request $request, Mailer $mailer): JsonResponse
{
    // $mailer is auto-injected
}

Yanıt Döndürme

Denetleyiciler şunları döndürebilir: görünümler, yönlendirmeler, JSON yanıtları ve dosya indirmeleri.

<?php
return view("users.show", compact("user"));
return redirect()->back()->with("status", "Saved!");
return response()->json($user);
return response()->download(storage_path("report.pdf"));

Denetleyici Ad Alanları

Tüm denetleyiciler varsayılan olarak App\Http\Controllers içinde bulunur. Alt dizinler alt ad alanları oluşturur: App\Http\Controllers\Admin\UserController.

Denetleyicileri Sade Tutma

Denetleyiciler iş mantığını hizmet sınıflarına veya işlemlere devretmelidir. Yalnızca şunları yapan denetleyicileri hedefleyin: girdiyi doğrulamak, bir hizmeti çağırmak ve yanıt döndürmek.

Özet

Denetleyicileri Artisan ile oluşturun. Otomatik ekleme için Request ve hizmetlere tür belirtimi ekleyin. Girdi doğrulaması için validate() kullanın. Denetleyicileri sade tutun — işlemleri hizmetlere devredin.

Hızlı Kontrol

Hangi Artisan komutu bir kaynak denetleyicisi oluşturur?

Sıkça Sorulan Sorular

“Denetleyiciler ve Eylemler” dersi ücretsiz mi?

Evet — “Denetleyiciler ve Eylemler” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve PHP Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. PHP Academy kursu toplamda 4 dersten oluşur.

“Denetleyiciler ve Eylemler” dersinde ne öğreneceğim?

artisan ile denetleyiciler oluşturun ve istekleri eylem metotlarında işleyin. PHP Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.

PHP Academy öğrenmeye başlamak için deneyim gerekli mi?

Önceden deneyim gerekmez. CoddyKit'te PHP Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 3. dersidir.

“Denetleyiciler ve Eylemler” dersi ne kadar sürer?

Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.

Bu PHP Academy dersinde kod yazıp çalıştırabilir miyim?

Evet. Her PHP Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.

Bu kursun tüm dersleri

  1. Laravel Proje Yapısı
  2. Laravel'de Rotaları Tanımlama
  3. Denetleyiciler ve Eylemler
  4. Blade Şablonları ve Görünümler
← PHP Academy Sayfasına Dön