Symfony2预定义参数

时间:2013-10-12 12:45:58

标签: symfony configuration

我在Symfony2配置文件中找到了一些预定义的参数,即。 %kernel.root_dir%%kernel.debug%

  • 这些地方有完整的清单吗?

2 个答案:

答案 0 :(得分:16)

他们在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()
    );
}

答案 1 :(得分:0)

您还可以在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'),
        ...
    );
}