Database
Inject a named database connection
Description: Injects a named database connection instance. Similar to #[DB] but also accepts enum values.
Namespace: Illuminate\Container\Attributes\Database
Usage
use Illuminate\Container\Attributes\Database;
use Illuminate\Database\Connection;
class ReportService
{
public function __construct(
#[Database('pgsql')] private readonly Connection $connection
) {}
}
Enum values are also supported:
use App\Enums\DatabaseConnection;
class ReportService
{
public function __construct(
#[Database(DatabaseConnection::Pgsql)] private readonly Connection $connection
) {}
}