zoukankan      html  css  js  c++  java
  • Zend Framework学习(6)之分发器

    分发是取得请求对象,提取其中的模块名、控制器名、动作名以及可选参数,然后实例化控制器并调用其中动作的整个过程。
    如果其中的模块、控制器或动作没有找到,将使用默认值。
    Zend_Controller_Dispatcher_Standard类指定每个控制器和动作的默认值为index,模块的默认值为default。
    该类允许开发者通过setDEfaultController()方法、setDefaultAction()方法和setDefaultModule()方法改变默认值设定。

    _forward()

    功能:在任意动作中调用该方法,并传入动作、控制器、模块以及可选的参数,就可以进入新的动作。

    案例:

    <?php
    public function fooAction(){    //定义动作
        //转到当前控制器与模块中的其他动作中
        $this->_forward('bar',null,null,array('baz'=>'bogus'));//第一个参数,表动作;第二个参数,表控制器;第三个参数表示模块
    }
    
    public function barAction(){    //定义动作
        //转到当前模块的其他控制器的动作中,FooController::bazAction()
        $this->_forward('baz','foo',null,array('baz'=>'bogus'));
    }
    
    public function bazAction(){
        //转到其他控制器、其他模块中的动作,Foo_BarController::bazAction()
        $this->_forward('baz','bar','foo',array('baz'=>'bogus'));
    }
  • 相关阅读:
    洛谷 P1990 覆盖墙壁
    洛谷 P1033 自由落体
    洛谷 P2049 魔术棋子
    洛谷 P2183 巧克力
    poj_1743_Musical Theme(后缀数组)
    Codeforces Round #367 (Div. 2) D. Vasiliy's Multiset
    Codeforces Round #367 (Div. 2) C. Hard problem
    hdu_5831_Rikka with Parenthesis II(模拟)
    hdu_5826_physics(物理题)
    hdu_5821_Ball(贪心)
  • 原文地址:https://www.cnblogs.com/jiqing9006/p/2946535.html
Copyright © 2011-2022 走看看