Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/symfony/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Forms 如何在symfony2表格中显示具有特定标记的所有服务的名称_Forms_Symfony_Service_Formbuilder - Fatal编程技术网

Forms 如何在symfony2表格中显示具有特定标记的所有服务的名称

Forms 如何在symfony2表格中显示具有特定标记的所有服务的名称,forms,symfony,service,formbuilder,Forms,Symfony,Service,Formbuilder,我有几个服务使用相同的标签进行标记。我想知道如何继续检索所有这些服务的列表并将其注入表单中 下面是我最后想要的示例: $builder->add('days', 'choice', array( 'choices' => $SERVICES, 'multiple' => false, 'expanded' => false, )) 其主要思想是定义一个服务,该服务将处理特定类型的所有标记服务,然后在编译器内将标记服务添加到此服务 以上的文

我有几个服务使用相同的标签进行标记。我想知道如何继续检索所有这些服务的列表并将其注入表单中

下面是我最后想要的示例:

$builder->add('days', 'choice', array(
    'choices' => $SERVICES,
    'multiple' => false,
    'expanded' => false,
    ))

其主要思想是定义一个服务,该服务将处理特定类型的所有标记服务,然后在编译器内将标记服务添加到此服务

以上的文档为例,您可以添加一个返回所有服务的方法:

<?php

// ...

class TransportChain
{
    // ...

    /**
     * @return array
     */
    public function getTransports()
    {
        return $this->transports;
    }
}
当然,为了返回字符串而不是对象,您必须对所有这些进行一些调整

// Get access to all services tagged with "acme_mailer.transport"
$transports = $this
    ->getContainer()
    ->get('acme_mailer.transport_chain')
    ->getTransports()
;