2016-12-21 3 views
0

У меня есть файл JSON со всеми мировыми языками и хотел бы поместить их в массив выбора внутри поля формы ChoiceType.Symfony2 - ChoiceType - получить список выбора из JSON без JS

$builder->add('languages', ChoiceType::class, array(
    'choices' => array() 
)) 

Мой файл JSON хранится: projectname/web/bundles/index/json/languages.json

Можно ли добиться этого без написания JS/AJAX?

P.S.EventListeners или другие альтернативы, которые Symfony2 обеспечивает мне подходит.

+1

У вас есть доступ из файла JSON внутри вашего PHP файлов? – goto

+0

@goto Да json-файл хранится в моем каталоге проектов. Я обновил вопрос –

ответ

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) 
    )); 
Смежные вопросы