수색…
소개
다음은 /app/config/config./yml/xml에 자신의 번들 구성을 만드는 방법에 대한 설명입니다.
app / config / config.yml에서 구성 만들기
amazingservice:
url: 'http://amazing.com'
client_id: 'test_client_1'
client_secret: 'test_secret'
이것은 yml 형식을 따르는 yml 형식의 구성 만들기에 대한 기본 예제입니다. 더 깊은 구성을 취할 수 있습니다.
생성 된 번들에 config를 설정하십시오.
예를 들어 symfony 콘솔에 의해 생성 된 번들이 있습니다. 이 경우 DependencyInjection / Configuration.php에서 구성 표현을 삽입해야합니다.
$treeBuilder = new TreeBuilder();
$rootNode = $treeBuilder->root('amazingservice');
$rootNode->children()
->scalarNode('url')->end()
->scalarNode('client_id')->end()
->scalarNode('client_secret')->end()
->end()
->end();
기본적으로 DependencyInjection / AmazingserviceExtension.php에는 다음과 같은 내용이 표시됩니다.
$configuration = new Configuration();
$config = $this->processConfiguration($configuration, $configs);
Srevices에서 구성을 가져 오는 것만으로는 충분하지 않습니다. 그것을 용기에 넣어야합니다.
$container->setParameter(
'amazingservice.config',
$config
);
이 경우 컨테이너의 설정이므로 컨테이너가 생성자 매개 변수로 컨테이너를 가져 오는 경우 :
base.amazingservice:
class: Base\AmazingBundle\Services\AmazingServices
arguments: [@service_container]
그런 다음 구성이 연관 배열이 될 다음 코드를 사용하여 서비스에서 구성을 가져올 수 있습니다.
private $config;
public function __construct(Container $container){
$this->config = $container->getParameter('amazingservice.config');
}
Modified text is an extract of the original Stack Overflow Documentation
아래 라이선스 CC BY-SA 3.0
와 제휴하지 않음 Stack Overflow