我知道Zend_Form从很多开发人员那里得到了很多仇恨,我甚至听说很多人都是从[在这里插入随机php框架名称]切换到ZF的主要关闭,但就在不久之前我发现使用.ini文件创建表单是解决这个问题的方法,也是最好的方法。我没有找到任何有用的信息在谷歌周围搜索,有人能指出我正确的道路吗?
非常感谢。
答案 0 :(得分:3)
创建ini文件,例如。 (我们将在本例中使用forms.ini)
[制作]
user.login.elements.LastName.type = "text"
user.login.elements.LastName.options.label = "Last Name:"
(保存到../ configs / forms.ini)
在引导程序中,你需要初始化它,如下所示:
$forms = new Zend_Config_Ini(APPLICATION_PATH . '/configs/forms.ini', 'production');
Zend_Registry::set('forms', $forms);
然后在你的控制器中你称之为
$forms = Zend_Registry::get('forms');
$form = new Zend_Form($forms->user->login);
$this->view->form = $form;
在您的视图中,您可以使用
显示它<?php echo $this->form ;?>
或者如果您尝试从登录集中只访问一个表单元素,则可以执行类似这样的操作
<?php echo $this->form->LastName ;?>
希望这就是你要找的东西
答案 1 :(得分:1)
检查一下。它在本页的官方手册中说明: http://framework.zend.com/manual/1.12/en/zend.form.quickstart.html
向下滚动到“使用Zend_Config对象”一节。你有一些例子。
如文档中所述,Zend_Config工厂将提取描述表单的.ini文件。之后,您可以使用Zend_Config实例构建Zend_Form。
$config = new Zend_Config_Ini($configFile, 'development');
$form = new Zend_Form($config->user->login);