Fonte oficial no Laravel
AttributeIlluminate\Container\Attributes\Give

#[Give]

Passa um valor específico para um parâmetro no container de serviços.

Disponível desde

Laravel 13.0

Aplicável em

parameter

Parâmetros

  • $classstring

    Classe que será injetada.

  • $paramsarray

    Parâmetros adicionais para a classe injetada.

Uso prático

use Illuminate\Container\Attributes\Give;

class ReportCommand
{
    public function __invoke(#[Give('App\Services\ReportService', ['param1' => 'value1'])] mixed $service): void
    {
        // Faz algo com o serviço
    }
}