Zend Framework前端控制器用法示例

时间:2022-10-17 19:48:54

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

常用方法

1.getInstance()

功能:用于获取前端控制器实例。

代码如下:

?
1
2
<?php
$front = Zend_Controller_Front::getInstance();

执行上述代码,将创建一个前端控制器实例。

2.setControllerDirectory()

功能:用于通知分发器到何处查找动作控制器action controller类文件。

3.getControllerDirectory()

功能:用来获取控制器目录的当前位置

代码如下:

?
1
2
3
<?php
$front = Zend_Controller_Front::getInstance();
$dire = $front->getControllerDirectory();

环境访问器方法

1.resetInstance()
功能:清除当前的所有设置

2.(set|get)DefaultControllerName()
功能:为默认的控制器指定另外一个名称,以及获取当前值

3.(set|get)DefaultActionName()
功能:为默认的动作指定另外一个名称,以及获取当前值

4.(set|get)Request()
功能:指定分发过程中使用的请求类或对象,以及获取当前的请求对象

5.(set|get)Router()
功能:指定分发过程中使用的路由器类或对象,以及获取当前对象

6.(set|get)Response()
功能:指定分发过程中使用的响应类或对象,以及获取当前对象

前端控制器参数

1.setParam(name,name,value)
功能:设定值为value的单个参数value的单个参数name

2.setParams(array $params)
功能:通过关联数组一次设定多个参数

3.getParam($name)
功能:通过$name标识符获取单个参数

4.getParams()
功能:一次获取整个参数列表

5.clearParams()
功能:清空一个参数(传入单个字符串),多个参数(传入数组),全部参数(无参)

例子:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
<?php
require_once 'Zend/Controller/Front.php';    //加载Zend_Controller_Front类
$front = Zend_Controller_Front::getInstance();  //获取前端控制器实例
$front->setParam('name','张三');        //设定前端控制器参数
$name = $front->getParam('name');        //获取设定的参数
echo $name;
echo "<p>";
$array = array(
  'g_n'=>'联想',
  'g_c'=>'5000',
  'g_a'=>'北京',
  'g_p'=>'联想集团'
);
$front->setParams($array);
$g = $front->getParams();
foreach($g as $k=>$v){
  echo $k."的值为:".$v;
  echo "<p>";
}
$front->clearParams();
$last = $front->getParams();
foreach($last as $k=>$v){
  echo $k."的值为:".$v;
  echo "<p>";
}

结果为:

?
1
2
3
4
5
6
张三
name的值为:张三
g_n的值为:联想
g_c的值为:5000
g_a的值为:北京
g_p的值为:联想集团

由于参数被清除,所以第二次调用时没有数据输出。

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