2013-08-23 87 views
2

爲什麼Zend_Autoloader無法加載我的類。 臨屋路徑庫應該是:/root/application/modules/modulexy/MyLib (Zend的版本1.12)Zend Autoloader:模塊文件夾中的自定義庫

我所做的:

  1. 在公共/ index.php文件

set_include_path(implode(PATH_SEPARATOR, array( ... realpath(APPLICATION_PATH . '/modules/modulexy/MyLib'), ... )));

  1. 在控制器中

    $ al = Zend_Loader_Autoloader :: getInstance(); $ al-> registerNamespace(「MyLib_」);

我不想庫移到/root/library

+1

你的類的名字是什麼,文件如何被命名並放置在lib中? –

+0

類的名稱是這樣的:MyLib_Model_Abstract路徑是:MyLib/Model/Abstract.php – Gabe

+1

如果你正在使用linux可能與大寫字母有關,請嘗試使用小寫字母.. – joao

回答

2

include路徑不應包括 「MyLib中」 的一部分。

這應該工作:

set_include_path(implode(PATH_SEPARATOR, array(
     ... 
     realpath(APPLICATION_PATH . '/modules/modulexy'), 
     ... 
    ))); 

或者,如果你要那的lib額外的目錄,你可以有

set_include_path(implode(PATH_SEPARATOR, array(
     ... 
     realpath(APPLICATION_PATH . '/modules/modulexy/lib'), 
     ... 
    ))); 

,並把你的類 「MyLib_Model_Abstract」 中的「/模塊/ modulexy/lib目錄/MyLib/Model/Abstract.php

相關問題