我有一个包含所有世界语言的JSON
文件,并希望将它们放入ChoiceType
表单字段中的选择数组中。
$builder->add('languages', ChoiceType::class, array(
'choices' => array()
))
我的JSON
文件已存储:projectname/web/bundles/index/json/languages.json
是否可以在不编写JS
/ AJAX
的情况下实现它?
P.S。 EventListeners
或Symfony2
提供的其他替代方案非常适合我。
答案 0 :(得分:1)
您可以使用DIR访问该文件,因为我不知道带有构建器的php文件位于何处,它可能看起来像:
$builder->add('languages', ChoiceType::class, array(
'choices' => json_decode(
//if builder is in controller, this should work
file_get_contents(__DIR__.'/../../../web/bundles/index/json/languages.json'),
true)
));