What is service container in laravel?
-> Service container is a tool used for performing dependency injection in Laravel.
-> Service container is one of the most powerful tools used to manage dependencies over the class
-> It helps in binding interfaces to concrete classes.
Def:
The Laravel service container is a powerful tool for managing class dependencies
and performing dependency injection. Dependency injection is a fancy phrase
that essentially means this:
class dependencies are "injected" into the class via the constructor or,
in some cases, "setter" methods.
<?php
namespace App\Http\Controllers;
use App\Http\Controllers\Controller;
use App\Repositories\UserRepository;
use App\Models\User;
use Illuminate\View\View;
class UserController extends Controller
{
public function __construct(
protected UserRepository $users,
) {}
public function show(string $id): View
{
$user = $this->users->find($id);
return view('user.profile', ['user' => $user]);
}
}