首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > PHP >

ZendFramework怎么导入自己的类

2012-04-21 
ZendFramework如何导入自己的类?我想在ZendFramework中添加一个图像处理类,通过手册上还有网上看到的一些

ZendFramework如何导入自己的类?
我想在ZendFramework中添加一个图像处理类,通过手册上还有网上看到的一些方法,都是报错,不知道什么原因?
我把ImageProcessing.php放在application\Controller\Plugin目录下,
内容
class Custom_Controller_Plugin_ImageProcessing extends Zend_Controller_Plugin_Abstract{
……
}
然后在textAction()中使用,Zend_Loader::loadClass('Custom_Controller_Plugin_ImageProcessing');
报错:

Assembly code
Fatal error: Uncaught exception 'Zend_Controller_Dispatcher_Exception' with message 'Invalid controller specified (error)' in F:\web\my\library\Zend\Controller\Dispatcher\Standard.php:248 Stack trace: #0 F:\web\my\library\Zend\Controller\Front.php(954): Zend_Controller_Dispatcher_Standard->dispatch(Object(Zend_Controller_Request_Http), Object(Zend_Controller_Response_Http)) #1 F:\web\my\index.php(28): Zend_Controller_Front->dispatch() #2 {main} Next exception 'Zend_Controller_Exception' with message 'Invalid controller specified (error)#0 F:\web\my\library\Zend\Controller\Front.php(954): Zend_Controller_Dispatcher_Standard->dispatch(Object(Zend_Controller_Request_Http), Object(Zend_Controller_Response_Http)) #1 F:\web\my\index.php(28): Zend_Controller_Front->dispatch() #2 {main}' in F:\web\my\library\Zend\Controller\Plugin\Broker.php:336 Stack trace: #0 F:\web\my\library\Zend\Controller\Front.php(965): Zend_Controller_Plugin_Broker->postDispatch(Object(Zend_Controller_Request_Http)) #1 F:\web\my\index.php(28): Zend_Contr in F:\web\my\library\Zend\Controller\Plugin\Broker.php on line 336

这是按照网上别人说着的方法来做的,是不是我自己在Controller目录下建立Plugin文件夹,之后还要在哪里set一下Plugin的路径?
index.php文件代码:
PHP code
<?php    error_reporting(E_ALL|E_STRICT);    date_default_timezone_set('Asia/Shanghai');    set_include_path('.' .PATH_SEPARATOR .'./library'.PATH_SEPARATOR .'./application/model/'.PATH_SEPARATOR . get_include_path());    require_once "Zend/Loader/Autoloader.php";  //载入zend框架    Zend_Loader_Autoloader::getInstance()->setFallbackAutoloader(true); //静态载入自动类文件    $registry = Zend_Registry::getInstance();    $view = new Zend_View();    $view->setScriptPath('./tpl/');//设置模板显示路径//    $view->setHelperPath('./tpl/');//设置 显示路径    $registry['view'] = $view;//注册View        //配置数据库参数,并连接数据库    $config=new Zend_Config_Ini('./application/config/config.ini',null, true);    Zend_Registry::set('config',$config);    $dbAdapter=Zend_Db::factory($config->general->db->adapter,$config->general->db->config->toArray());    $dbAdapter->query('SET NAMES UTF8');    Zend_Db_Table::setDefaultAdapter($dbAdapter);    Zend_Registry::set('dbAdapter',$dbAdapter);    Zend_Registry::set('dbprefix',$config->general->db->config->prefix);    //设置控制器    $frontController =Zend_Controller_Front::getInstance();    $frontController->setBaseUrl('/')//设置基本路径                    ->setParam('noViewRenderer', true)                    ->setControllerDirectory('./application/Controller')                    ->dispatch();//                    ->throwExceptions(true)

还有我把该类放到application\Views\helpers目录下,
内容:class Zend_View_Helper_ImageProcessing extends Zend_View_Helper_Abstract {……}
也报一样的错误。
这个问题搞了好几天了,希望高手帮帮我。
还有个小问题,就是在thinkphp中,如果要添加自己公共function,可以在common/common.php中添加,而zendframework是通过怎么添加?

[解决办法]
要不可以用这个,但是有点牵强
http://blog.csdn.net/mengxiangbaidu/article/details/7345108


那个\Views\helpers自定义助手的方法。没有写。过两天有时间再写。


或者你直接include。这都是允许的

热点排行