首頁  >  文章  >  php教程  >  zend framework的init()相关使用

zend framework的init()相关使用

PHP中文网
PHP中文网原創
2016-05-25 17:15:031162瀏覽

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(),执行相应的代码*/
陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn