如何在ZF1 api doc

时间:2016-03-13 01:03:06

标签: php zend-framework api-doc

像这样的Zend_Form:

class Application_Form_Registration extends Zend_Form
{

    public function init()
    {
        /* Form Elements & Other Definitions Here ... */
        $$this->setMethod('post');

        //first name
        $this->addElement('text', 'email', array(
            'label'         => 'First name',
            'required'      => true,
            'filters'       => array('StringTrim'),
        ));

        //last name
        $this->addElement('text', 'lastname', array(
            'label'         => 'Last name', 
            'required'      => true,
            'filters'       => array('StringTrim')
        ));

        $this->addElement('submit', 'submit', array(
            'ignore'        => true,
            'label'         => 'Submit'
        ));

        $this->addElement('hash', 'csrf', array(
            'ignore'    => true,
        ));
    }


}

我通读了ZF1 1.12 API和参考文档,但是我在Zend_Form :: addElement()配置选项中找不到标志“ignore”的含义。

api doc就是这样的: enter image description here

当然我用Google搜索并找到了它,但这不是工作方式。如何找到某些特定内容的含义。我不认为我需要阅读源代码?

以这个addElement()为例,我错过了哪里可以看得更远? Zend_Config类中没有任何关于ignore标志的内容。

2 个答案:

答案 0 :(得分:0)

据我所知ignore标志定义表单值($form->getValues())是否包含元素值。如果某个元素的ignore设置为true,那么表单值($form->getValues())将不包含此元素值。

答案 1 :(得分:0)

ZF文档可能......有时缺乏。忽略标志状态的API文档:

getIgnore( ) : bool Get ignore flag (used when retrieving values at form level)

提示ignore标志与Zend_Form GetValues()的行为有关,但事实并非如此。

在这些情况下,我喜欢直接查看源代码,以便我自己看看:

public function getValues($supressArrayNotation = false)
{
    ...
    foreach ($this->getElements() as $key => $element) {
        if (!$element->getIgnore()) {
    ...
}

您可以看到Zend_Form中的getValues()函数将在将值添加到返回数组之前检查每个元素上的ignore标志。如果该标志为true,则不包括该值。