Suche…
Einführung
Erstellen Sie die Konfiguration in app / config / config.yml
amazingservice:
url: 'http://amazing.com'
client_id: 'test_client_1'
client_secret: 'test_secret'
Dies ist ein einfaches Beispiel für das Erstellen einer Konfiguration im Yml-Format. Um dem Yml-Format zu folgen, können Sie eine genauere Konfiguration vornehmen.
Legen Sie die Konfiguration im erstellten Bundle fest
Beispielsweise haben Sie ein Bundle, das von der Symfony-Konsole generiert wird. In diesem Fall müssen Sie in der DependencyInjection / Configuration.php Ihre Konfigurationsdarstellung einfügen:
$treeBuilder = new TreeBuilder();
$rootNode = $treeBuilder->root('amazingservice');
$rootNode->children()
->scalarNode('url')->end()
->scalarNode('client_id')->end()
->scalarNode('client_secret')->end()
->end()
->end();
Grundsätzlich werden in der DependencyInjection / AmazingserviceExtension.php folgende Zeilen angezeigt:
$configuration = new Configuration();
$config = $this->processConfiguration($configuration, $configs);
Es reicht nicht aus, um die Konfiguration in den Spalten zu erhalten. Sie müssen es in den Behälter bringen.
$container->setParameter(
'amazingservice.config',
$config
);
In diesem Fall die Konfiguration im Container, also wenn Ihr Service den Container als Konstruktorparameter erhält:
base.amazingservice:
class: Base\AmazingBundle\Services\AmazingServices
arguments: [@service_container]
Dann können Sie die Konfiguration im Dienst mit dem folgenden Code abrufen, wobei die Konfiguration ein assoziatives Array ist:
private $config;
public function __construct(Container $container){
$this->config = $container->getParameter('amazingservice.config');
}