Rumah  >  Artikel  >  php教程  >  Zend Framework分发器用法示例

Zend Framework分发器用法示例

高洛峰
高洛峰asal
2017-01-06 09:49:361178semak imbas

本文实例讲述了Zend Framework分发器用法。分享给大家供大家参考,具体如下:

分发是取得请求对象,提取其中的模块名、控制器名、动作名以及可选参数,然后实例化控制器并调用其中动作的整个过程。

如果其中的模块、控制器或动作没有找到,将使用默认值。

Zend_Controller_Dispatcher_Standard类指定每个控制器和动作的默认值为index,模块的默认值为default。

该类允许开发者通过setDEfaultController()方法、setDefaultAction()方法和setDefaultModule()方法改变默认值设定。

_forward()

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

案例:

<?php
public function fooAction(){  //定义动作
  //转到当前控制器与模块中的其他动作中
  $this->_forward(&#39;bar&#39;,null,null,array(&#39;baz&#39;=>&#39;bogus&#39;));//第一个参数,表动作;第二个参数,表控制器;第三个参数表示模块
}
public function barAction(){  //定义动作
  //转到当前模块的其他控制器的动作中,FooController::bazAction()
  $this->_forward(&#39;baz&#39;,&#39;foo&#39;,null,array(&#39;baz&#39;=>&#39;bogus&#39;));
}
public function bazAction(){
  //转到其他控制器、其他模块中的动作,Foo_BarController::bazAction()
  $this->_forward(&#39;baz&#39;,&#39;bar&#39;,&#39;foo&#39;,array(&#39;baz&#39;=>&#39;bogus&#39;));
}

希望本文所述对大家基于Zend Framework框架的PHP程序设计有所帮助。

更多Zend Framework分发器用法示例相关文章请关注PHP中文网!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn