1

いくつかのフィールドを持つ単純な zend フォームを作成したいのですが、このフィールドを配列に集めたいです。フォーム名を次のように表示したい:

name="login[username]" name="login[password]" name="login[submit]"

説明を見つけることができませんでした。解決策を知っている人がいたら教えてください!

4

1 に答える 1

3

そのようなフィールドセットで試すことができます

namespace Application\Form;

use Application\Entity\Brand;
use Zend\Form\Fieldset;
use Zend\InputFilter\InputFilterProviderInterface;

class YourFieldset extends Fieldset implements InputFilterProviderInterface
{
    public function __construct()
    {
        parent::__construct('login');

        $this->add(array(
            'name' => 'username',
            'options' => array(
                'label' => 'Username'
            ),
            'attributes' => array(
                'required' => 'required'
            )
        ));

        $this->add(array(
            'name' => 'password',
            'type' => 'Zend\Form\Element\Password',
            'options' => array(
                'label' => 'Password'
            ),
            'attributes' => array(
                'required' => 'required'
            )
        ));

    $this->add(array(
            'name' => 'submit',
            'type' => 'Zend\Form\Element\Submit',
            'options' => array(
                'label' => 'Submit'
            ),
            'attributes' => array(
                'required' => 'required'
            )
        ));
    }

    /**
     * @return array
     */
    public function getInputFilterSpecification()
    {
        return array(
            'name' => array(
                'required' => true,
            )
        );
    }
}
于 2013-04-27T13:44:05.217 に答える