Controller
Holds business logic — lives in app/Controllers/.
UserController.php — Full CRUD Example
app/Controllers/UserController.php
namespace App\Controllers; use App\Core\Controller; use App\Models\User; class UserController extends Controller { public function index(): void { $users = User::all(); $this->view('users/index', ['users' => $users]); } public function show(int $id): void { $this->json(User::find($id)); } public function store(): void { $user = User::create($this->request()->all()); $this->json($user, 201); } public function update(int $id): void { $data = $this->request()->only(['name', 'email']); User::where('id', $id)->update($data); $this->json(['message' => 'Updated']); } public function destroy(int $id): void { User::destroy($id); $this->json(['message' => 'Deleted']); } }
$this->view()
Render a view
$this->json()
Return JSON
->request()->all()
All input data
->request()->only()
Belirli alanlar / Only fields