This package is abandoned and no longer maintained. The author suggests using the symfony/dependency-injection package instead.

Autowire array parameters for your Symfony applications

11.1.26 2023-02-03 09:12 UTC

This package is auto-updated.

Last update: 2023-10-06 11:55:11 UTC


Downloads total


composer require symplify/autowire-array-parameter


1. Register Compiler Pass in kernel

use Symfony\Component\DependencyInjection\ContainerBuilder;
use Symfony\Component\HttpKernel\Kernel;
use Symplify\PackageBuilder\DependencyInjection\CompilerPass\AutowireArrayParameterCompilerPass;

class AppKernel extends Kernel
    protected function build(ContainerBuilder $containerBuilder): void
            new AutowireArrayParameterCompilerPass(
                    // place for excluding types to resolve edge cases

2. Autowire Array Parameters

This feature surpasses YAML-defined, tag-based or CompilerPass-based collectors in minimalistic way:

class Application
     * @var Command[]
    private $commands = [];

     * @param Command[] $commands
    public function __construct(array $commands)
        $this->commands = $commands;
        // instance of Command collected from all services

Report Issues

In case you are experiencing a bug or want to request a new feature head over to the Symplify monorepo issue tracker


The sources of this package are contained in the Symplify monorepo. We welcome contributions for this package on symplify/symplify.