Heim  >  Artikel  >  php教程  >  zend framework的init()相关使用

zend framework的init()相关使用

PHP中文网
PHP中文网Original
2016-05-25 17:15:031163Durchsuche

php代码:

/*首先我们了解一下类的构造函数的执行顺序
下面介绍一下我的代码结构;*/

class Action extends Zend_Controller_Action {

        }
        class IndexController extends Action{
   
       }
        class BlogController extends Action{
   
       }
       
      /*刚开始我想使用构造函数,如下:*/
 class Action extends Zend_Controller_Action {
                public function __construct(){
                        echo 'test';
                 }
        }    

       /*但后来发生错误,最后发现原因是没有调用Zend_Controller_Action中的构造函数。
       
        细读Zend_Controller_Action的源码发现123行构造函数 调用了函数 $this->init();
因此我想在Action重构这个函数,这样就可以每次调用init()函数。
        最后是:*/
 class Action extends Zend_Controller_Action {
                public function init(){
                        echo 'test';
                 }
        }           

/*好了,每个controller都会执行这个函数。
 这个技巧还是很实用的!
最后提醒大家的是,每次执行的时候,是先执行Controller的初始化函数init()内部的代码,然后根据选择相应的Action(),执行相应的代码*/
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn