Zend framework Zend framework-是否有多个复选框的验证器?

Zend framework Zend framework-是否有多个复选框的验证器?,zend-framework,Zend Framework,我想要两个复选框来表示是/否答案,并要求勾选其中一个。是否有一组复选框的内置验证器?据我所知,没有 但是你可以在你的表格里做这样的事情。在表单类中手动扩展isValid方法,以检查是否至少有复选框_1或复选框_2是票证。你应该照阿德里安说的做,用无线电代替。但原则是一样的 <?php class App_Your_Form extends Zend_Form { public function init() { ... Your stuff ...

我想要两个复选框来表示是/否答案,并要求勾选其中一个。是否有一组复选框的内置验证器?

据我所知,没有

但是你可以在你的表格里做这样的事情。在表单类中手动扩展isValid方法,以检查是否至少有复选框_1或复选框_2是票证。你应该照阿德里安说的做,用无线电代替。但原则是一样的

<?php 

class App_Your_Form extends Zend_Form
{
    public function init()
    {
         ... Your stuff ...
    }

    public function isValid($data)
    {
        $isValid = parent::isValid($data);

        if ($this->getValue('checkbox_1') != '1' && $this->getValue('checkbox_2') != '1') {
             $this->getElement('checkbox_1')->setErrors(array('You  have to set check at least chexbkox_1 or checkbox 2'));
             $isValid = false;
        }

        return $isValid;
    }
}

如果使用无线电元件,则只需
设置必需(true)
。实际上,这同样适用于
MultiCheckbox
Zend元素

$element->setRequired(true);

仅供参考,对于是/否回答,您应使用无线电元素,而不是复选框。