首页 > 后端开发 > php教程 > ZendFramework怎么导入自己的类

ZendFramework怎么导入自己的类

WBOY
发布: 2016-06-13 10:17:34
原创
875 人浏览过

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

Assembly code
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->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
<!--Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/--><?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)
登录后复制

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

------解决方案--------------------
要不可以用这个,但是有点牵强
http://blog.csdn.net/mengxiangbaidu/article/details/7345108


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


或者你直接include。这都是允许的
相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板