Symfony\Component\DependencyInjection\Loader\YamlFileLoader::load PHP Method

load() public method

public load ( $resource, $type = null )
    public function load($resource, $type = null)
    {
        $path = $this->locator->locate($resource);

        $content = $this->loadFile($path);

        $this->container->addResource(new FileResource($path));

        // empty file
        if (null === $content) {
            return;
        }

        // imports
        $this->parseImports($content, $path);

        // parameters
        if (isset($content['parameters'])) {
            if (!is_array($content['parameters'])) {
                throw new InvalidArgumentException(sprintf('The "parameters" key should contain an array in %s. Check your YAML syntax.', $resource));
            }

            foreach ($content['parameters'] as $key => $value) {
                $this->container->setParameter($key, $this->resolveServices($value));
            }
        }

        // extensions
        $this->loadFromExtensions($content);

        // services
        $this->parseDefinitions($content, $resource);
    }

Usage Example

 /**
  * {@inheritdoc}
  */
 public function load(array $configs, ContainerBuilder $container)
 {
     $configuration = $this->getConfiguration(array(), $container);
     $config = $this->processConfiguration($configuration, $configs);
     $loader = new YamlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config/'));
     $loader->load('console.yml');
     $loader->load('version_strategy.yml');
     $loader->load('manifest.yml');
     if ($config['livereload']['enabled']) {
         $loader->load('livereload.yml');
         $container->getDefinition($this->id('livereload.listener'))->addArgument($config['livereload']['url']);
     }
     $helper = Util::hasAssetComponent() ? new AssetExtensionHelper($this->getAlias(), $container, $loader) : new TemplatingExtensionHelper($this->getAlias(), $container, $loader);
     if ($config['override_default_package']) {
         $loader->load('fallback.yml');
         $defaultPackage = $helper->createPackage('default', array('prefix' => $config['prefix'], 'manifest' => $config['manifest']));
         $defaultPackageId = $helper->getPackageId('default');
         $container->setDefinition($defaultPackageId, $defaultPackage);
         $fallbackPackage = $helper->createFallbackPackage($config['fallback_patterns'], new Reference($defaultPackageId));
         $container->setDefinition($this->id('package.fallback'), $fallbackPackage);
     }
     foreach ($config['packages'] as $name => $packageConfig) {
         $package = $helper->createPackage($name, $packageConfig)->addTag($helper->getPackageTag(), array('alias' => $name));
         $container->setDefinition($helper->getPackageId($name), $package);
     }
 }
All Usage Examples Of Symfony\Component\DependencyInjection\Loader\YamlFileLoader::load