我想动态设置放置在app/config/parameters.yml
文件中的数据库配置(用户名、主机、密码等)。
我所说的“动态”是基于某种形式的输入。
这可能吗?如果是这样,我该怎么做?
我想动态设置放置在app/config/parameters.yml
文件中的数据库配置(用户名、主机、密码等)。
我所说的“动态”是基于某种形式的输入。
这可能吗?如果是这样,我该怎么做?
请查看Sensio/SensioDistributionBundle,它已经包含在 symfony 标准版中。
它完全符合您的要求。在 parameters.yml 文件中设置基本参数。
执行 parameters.yml 实际写入的类是Sensio\DistributionBundle\Configurator\Configurator。
use Sensio\DistributionBundle\Configurator\Configurator;
现在使用控制器中的配置器。
$configurator = new Configurator($this->get('kernel')->getRootDir());
$configurator->mergeParameters(array(
'my_parameter' = 'my_value',
'my_parameter2' = 'my_value2',
));
$configurator->write();
}
最好的办法是查看 Configurator 类本身以了解它是如何工作的。
希望这可以帮助 :)