在AppKernel.php中获取parameters.yml参数

fab*_*ice 6 parameters symfony

任何人都知道如何在AppKernel.php中获取parameters.yml(或_dev)?

我想动态地改变getLogDir()变量('mylogsdir')?

AppKernel.php:

$this->rootDir.'/'.$this->environment.'/'.$myLogDir;
Run Code Online (Sandbox Code Playgroud)

parameters.yml:

parameters:
    myLogDir: 'logdir'
Run Code Online (Sandbox Code Playgroud)

可能吗 ?

非常感谢Fabrice

doy*_*y44 3

你可以尝试这样的事情:

在 AppKernel.php 中:

...
use Symfony\Component\Yaml\Yaml;
...
class AppKernel extends Kernel
{
....
    public function getLogDir()
    {
        $array = Yaml::parse(file_get_contents($this->getRootDir().'/config/parameters.yml'));
        // or 
        // $this->getRootDir().'/config/parameters_'.$this->getEnvironment().'.yml'
        $myLogDir = $array['parameters']['myLogDir'];
        return $this->rootDir.'/'.$this->environment.'/'.$myLogDir;
    }
Run Code Online (Sandbox Code Playgroud)