簡體   English   中英

Symfony2循環表單中的相同字段

[英]Symfony2 Looping Same field in form

我在symfony2形式上有問題。 我在表格中有一個相同的字段。 我通過更改名稱來一一創建。

    $formBuilderUpload = $this->createFormBuilder()->setAction($this->generateUrl('bsi_bkpm_backend_uploadfile_create'));

    $formBuilder = $formBuilderUpload;

        $formBuilder->add('file_1','file', array('required'=> false, 'label'=> 'File 1'))
                ->add('filename_1' , 'text',  array(
                    'required' => false,
                        'label' => 'Subject 1'
                    ))
                ->add('description_1','text',array('required'=> false, 'label'=>' Description 1'))

                ->add('file_2','file', array('required'=> false, 'label'=> 'File 2'))
                ->add('filename_2' , 'text',  array(
                    'required' => false,
                        'label' => 'Subject 2'))
                ->add('description_2','text',array('required'=> false, 'label'=>' Description 2'))                                

                ->add('file_3','file', array('required'=> false, 'label'=> 'File 2'))
                ->add('filename_3' , 'text',  array(
                    'required' => false,
                        'label' => 'Subject 3'))
                ->add('description_3','text',array('required'=> false, 'label'=>' Description 4'))            

                ->add('file_4','file', array('required'=> false, 'label'=> 'File 2'))
                ->add('filename_4' , 'text',  array(
                    'required' => false,
                        'label' => 'Subject 4'))
                ->add('description_4','text',array('required'=> false, 'label'=>' Description 4'))                                

                ->add('file_5','file', array('required'=> false, 'label'=> 'File 5'))
                ->add('filename_5' , 'text',  array(
                    'required' => false,
                        'label' => 'Subject 5'))
                ->add('description_5','text',array('required'=> false, 'label'=>' Description 5'))            

                // add submit button
                ->add('submit', 'submit', array('label' => 'Create'));

    //Create the form
    $form = $formBuilder->getForm();
    return $form; 

但是我希望代碼通過循環來提高效率。 有人知道如何循環嗎?

最好的祝福,

hendrawan

這似乎很簡單,只需像這樣循環遍歷for循環即可。

$limit = 5;

for ($i = 1; $i <= $limit; $i++) {
    $builder
        ->add('file_'.$i, 'file', array(
            'required'  => false, 
            'label'     => 'File '.$i,
        ))
        ->add('filename_'.$i, 'text',  array(
            'required'  => false,
            'label'     => 'Subject '.$i,
        ))
        ->add('description_'.$i, 'text', array(
            'required'  => false, 
            'label'     => 'Description '.$i,
        ))
    ;
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM