1

プロジェクトのapplication/forms / *。php(この場合はLoginForm.php)の下にあるフォームを自動ロードしようとしています。

このフォームを自動的にロードするようにZendsオートローダーを構成するにはどうすればよいですか?醜い名前空間を使用したくないので、ブートストラップでフォールバックを有効にしています。application.iniで構成されたフォームに関連するものがありません

ありがとう!

4

2 に答える 2

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 に答える
0

少し漠然としているので、これがあなたの質問に答えるかどうかはわかりませんが、次のことを試してください。

ブートストラップで:

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

明らかに、Form_LoginForm()クラスはapplication / forms/LoginForm.phpに存在します。

于 2012-04-23T20:49:58.493 に答える