[英]Symfony write to parameters.yaml from controller
我想将控制器的整数值写入parameters.yaml。 那有可能吗?
例:
parameters.yaml
parameters:
# ...
counter: 13
SomeController.php
class SomeController
{
public function indexAction()
{
$counter = $this->getParameter('counter');
$counter++;
// now save new counter value to parameters.yaml !??
}
}
参数通常是固定值。 因此,更好的方法可能是写入单个yaml文件:
http://symfony.com/doc/current/components/yaml/introduction.html
use Symfony\Component\Yaml\Dumper;
const MY_PARAM=13;
//manipulate and do your thing....
$array=['my_param'=>self::MY_PARAM++];
$dumper = new Dumper();
$yaml = $dumper->dump($array);
file_put_contents('/path/to/file.yml', $yaml);
然后,您可以在应用程序中的任何位置读取文件。
use Symfony\Component\Yaml\Parser;
$yaml = new Parser();
$value = $yaml->parse(file_get_contents('/path/to/file.yml'));
Parameters.yml必须仅包含固定的配置值! 您应该将计数器存储在数据库中,或者(我不喜欢)存储在txt文件中。
但是,如果您真的要编辑它。 您必须解析文件并搜索/替换该行……这确实是一个坏习惯!
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.