Nette\DI\ContainerLoader::load PHP Метод

load() публичный Метод

public load ( $generator, $key = NULL ) : string
Результат string
    public function load($generator, $key = NULL)
    {
        if (!is_callable($generator)) {
            // back compatiblity
            trigger_error(__METHOD__ . ': order of arguments has been swapped.', E_USER_DEPRECATED);
            list($generator, $key) = [$key, $generator];
        }
        $class = $this->getClassName($key);
        if (!class_exists($class, FALSE)) {
            $this->loadFile($class, $generator);
        }
        return $class;
    }

Usage Example

Пример #1
0
<?php

use GtfsMerger\Console\Application;
use Nette\DI;
use Symfony\Component\Console;
require __DIR__ . '/../vendor/autoload.php';
$loader = new DI\ContainerLoader(sys_get_temp_dir(), TRUE);
$class = $loader->load(time(), function (DI\Compiler $compiler) {
    $compiler->addExtension('php', new DI\Extensions\PhpExtension());
    $compiler->loadConfig(__DIR__ . '/config.neon');
});
/** @var DI\Container $container */
$container = new $class();
$configParams = $container->getParameters();
$version = $configParams['version'];
$build = $configParams['build'];
$app = new Application('GTFS Merger', $version, $build);
$commands = $container->findByType(Console\Command\Command::class);
foreach ($commands as $command) {
    $app->add($container->getService($command));
}
$app->run();
All Usage Examples Of Nette\DI\ContainerLoader::load