Service Container (IoC Container) - ядро Laravel. Управляет зависимостями и их внедрением:
// Регистрация
app()->bind(PaymentGateway::class, StripeGateway::class);
app()->singleton(Logger::class, fn() => new FileLogger('/logs'));
// Auto-resolution (без явной регистрации)
class UserController {
public function __construct(
private UserService $service, // Laravel сам создаст
) {}
}
// Контекстная привязка
app()->when(PhotoController::class)
->needs(FileSystem::class)
->give(S3FileSystem::class);Auto-resolution использует Reflection для анализа конструктора и автоматического создания зависимостей.