1

我正在尝试自动加载在 application/forms/*.php 下的项目中找到的表单(在本例中为 LoginForm.php )。

如何配置 Zends 自动加载器以自动加载此表单?因为我不想使用丑陋的命名空间,所以我在我的引导程序中启用了后备。我没有任何与我的 application.ini 中配置的表单相关的内容

谢谢!

4

2 回答 2

0

Not sure if this answers your question, as its a little vague, but try the following.

In your bootstrap:

protected function _initAppAutoload()
{
    $moduleLoad = new Zend_Application_Module_Autoloader(array(
       'namespace' => '',
       'basePath'   => APPLICATION_PATH
    ));
}

Obviously then the Form_LoginForm() class would exist in application/forms/LoginForm.php

于 2012-04-23T20:49:58.493 回答
0

默认的自动加载器会为你加载这个。确保您已检查以下内容:-

  1. 你的文件是 application/forms/Loginform.php
  2. 该文件包含如下内容:-

    class Application_Form_Loginform extends Zend_Form
    {
       //Take special note of the capitalisation - it is important
       // Also note it is Form NOT Forms
        public function init()
        {
            //Your code here
        }
    }
    
  3. 像这样打电话给你的班级: -

    $form = new Application_Form_Loginform();
    

对字母大小写要格外小心,重要的是你要完全正确,否则自动加载器将找不到你的类并会抱怨。

于 2012-04-23T18:51:41.813 回答