在 Symfony2 表单中使用函数 return 值作为选择选项
Using function return values for choices option at Symfony2 form
我有这个 Symfony2 表单:
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add(
'nombre',
'text',
array(
'required' => true,
'mapped' => false,
'label' => 'Nombre'
)
)
->add(
'anno_modelo',
'choice',
array(
'placeholder' => 'Escoja una opción',
'choices' => array(),
'required' => true
)
)
->add(
'anno_fabricacion',
'choice',
array(
'placeholder' => 'Escoja una opción',
'choices' => array(),
'required' => true
)
);
}
我有这个代码:
function getChoices() {
$choices = [];
for($i = date("Y"); $ >= 1900; $i--) {
$choices[$i - 1] = $i - 1;
}
return $choices;
}
我需要将 $choices
用作 choices
值,我该如何实现?
试试这个代码:
public function buildForm(FormBuilderInterface $builder, array $options)
{
$choices = $this->getChoices();
$builder
->add(
'nombre',
'text',
array(
'required' => true,
'mapped' => false,
'label' => 'Nombre'
)
)
->add(
'anno_modelo',
'choice',
array(
'placeholder' => 'Escoja una opción',
'choices' => $choices,
'required' => true
)
)
->add(
'anno_fabricacion',
'choice',
array(
'placeholder' => 'Escoja una opción',
'choices' => $choices,
'required' => true
)
);
}
private function getChoices()
{
$choices = [];
for($i = date('Y'); $i >= 1900; $i--) {
$choices[$i - 1] = $i - 1;
}
return $choices;
}
我有这个 Symfony2 表单:
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add(
'nombre',
'text',
array(
'required' => true,
'mapped' => false,
'label' => 'Nombre'
)
)
->add(
'anno_modelo',
'choice',
array(
'placeholder' => 'Escoja una opción',
'choices' => array(),
'required' => true
)
)
->add(
'anno_fabricacion',
'choice',
array(
'placeholder' => 'Escoja una opción',
'choices' => array(),
'required' => true
)
);
}
我有这个代码:
function getChoices() {
$choices = [];
for($i = date("Y"); $ >= 1900; $i--) {
$choices[$i - 1] = $i - 1;
}
return $choices;
}
我需要将 $choices
用作 choices
值,我该如何实现?
试试这个代码:
public function buildForm(FormBuilderInterface $builder, array $options)
{
$choices = $this->getChoices();
$builder
->add(
'nombre',
'text',
array(
'required' => true,
'mapped' => false,
'label' => 'Nombre'
)
)
->add(
'anno_modelo',
'choice',
array(
'placeholder' => 'Escoja una opción',
'choices' => $choices,
'required' => true
)
)
->add(
'anno_fabricacion',
'choice',
array(
'placeholder' => 'Escoja una opción',
'choices' => $choices,
'required' => true
)
);
}
private function getChoices()
{
$choices = [];
for($i = date('Y'); $i >= 1900; $i--) {
$choices[$i - 1] = $i - 1;
}
return $choices;
}