Предопределенные параметры Symfony2

Я нахожу некоторые предопределенные параметры в файлах конфигурации Symfony2, т.е. %kernel.root_dir%, %kernel.debug%.

  • Есть ли там исчерпывающий список?

Ответ 1

Они находятся под Symfony\Component\HttpKernel\Kernel.php;

/**
 * Returns the kernel parameters.
 *
 * @return array An array of kernel parameters
 */
protected function getKernelParameters()
{
    $bundles = array();
    foreach ($this->bundles as $name => $bundle) {
        $bundles[$name] = get_class($bundle);
    }

    return array_merge(
        array(
            'kernel.root_dir'        => $this->rootDir,
            'kernel.environment'     => $this->environment,
            'kernel.debug'           => $this->debug,
            'kernel.name'            => $this->name,
            'kernel.cache_dir'       => $this->getCacheDir(),
            'kernel.logs_dir'        => $this->getLogDir(),
            'kernel.bundles'         => $bundles,
            'kernel.charset'         => $this->getCharset(),
            'kernel.container_class' => $this->getContainerClass(),
        ),
        $this->getEnvParameters()
    );
}

Ответ 2

Вы также можете увидеть их в app/cache/dev/appDevDebugProjectContainer.php:getDefaultParameters() (это в конце файла) вместе со всеми другими параметрами, доступными вашему приложению.

/**
 * Gets the default parameters.
 *
 * @return array An array of the default parameters
 */
protected function getDefaultParameters()
{
    return array(
        'kernel.root_dir' => $this->targetDirs[2],
        'kernel.environment' => 'dev',
        'kernel.debug' => true,
        'kernel.name' => 'app',
        'kernel.cache_dir' => __DIR__,
        'kernel.logs_dir' => ($this->targetDirs[2].'/logs'),
        ...
    );
}