Zend Framework前端控制器用法示例


Posted in PHP onDecember 11, 2016

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

常用方法

1.getInstance()

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

代码如下:

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

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

2.setControllerDirectory()

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

3.getControllerDirectory()

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

代码如下:

<?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()
功能:清空一个参数(传入单个字符串),多个参数(传入数组),全部参数(无参)

例子:

<?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>";
}

结果为:

张三
name的值为:张三
g_n的值为:联想
g_c的值为:5000
g_a的值为:北京
g_p的值为:联想集团

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

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

PHP 相关文章推荐
phpBB BBcode处理的漏洞
Oct 09 PHP
怎样才能成为PHP高手?学会“懒惰”的编程
Dec 05 PHP
默默小谈PHP&amp;MYSQL分页原理及实现
Jan 02 PHP
php array_slice函数的使用以及参数详解
Aug 30 PHP
PHP输出时间差函数代码
Jan 28 PHP
使用PHP下载CSS文件中的图片的代码
Sep 24 PHP
PHP采用自定义函数实现遍历目录下所有文件的方法
Aug 19 PHP
php实现压缩多个CSS与JS文件的方法
Nov 11 PHP
php实现图片添加描边字和马赛克的方法
Dec 10 PHP
PHP使用Pear发送邮件(Windows环境)
Jan 05 PHP
thinkPHP5.0框架整体架构总览【应用,模块,MVC,驱动,行为,命名空间等】
Mar 25 PHP
thinkPHP框架实现的无限回复评论功能示例
Jun 09 PHP
Zend Framework路由器用法实例详解
Dec 11 #PHP
Zend Framework分发器用法示例
Dec 11 #PHP
PHP与SQL语句常用大全
Dec 10 #PHP
PHP中SQL查询语句的id=%d解释(推荐)
Dec 10 #PHP
PHP获取页面执行时间的方法(推荐)
Dec 10 #PHP
PHP页面跳转实现延时跳转的方法
Dec 10 #PHP
php异步:在php中使用fsockopen curl实现类似异步处理的功能方法
Dec 10 #PHP
You might like
一个比较简单的PHP 分页分组类
2009/12/10 PHP
PHP版网站缓存加快打开速度的方法分享
2012/06/03 PHP
跟我学Laravel之视图 &amp; Response
2014/10/15 PHP
php上传文件并存储到mysql数据库的方法
2015/03/16 PHP
php str_getcsv把字符串解析为数组的实现方法
2017/04/05 PHP
PHP 爬取网页的主要方法
2018/07/13 PHP
php 与 nginx 的处理方式及nginx与php-fpm通信的两种方式
2018/09/28 PHP
js右键菜单效果代码
2007/07/21 Javascript
JS是否可以跨文件同时控制多个iframe页面的应用技巧
2007/12/16 Javascript
JavaScript脚本性能优化注意事项
2008/11/18 Javascript
jQuery源码分析之Event事件分析
2010/06/07 Javascript
lyhucSelect基于Jquery的Select数据联动插件
2011/03/29 Javascript
利用javascript的面向对象的特性实现限制试用期
2011/08/04 Javascript
javascript的console.log()用法小结
2012/05/31 Javascript
一个简单的JS鼠标悬停特效具体方法
2013/06/17 Javascript
parentElement,srcElement的使用小结
2014/01/13 Javascript
jQuery实现动态添加和删除一个div
2015/08/12 Javascript
简单讲解AngularJS的Routing路由的定义与使用
2016/03/05 Javascript
DOM事件探秘篇
2017/02/15 Javascript
mac上node.js环境的安装测试
2017/07/03 Javascript
node跨域请求方法小结
2017/08/25 Javascript
nodejs+mongodb+vue前后台配置ueditor的示例代码
2018/01/02 NodeJs
JSON生成Form表单的方法示例
2018/11/21 Javascript
vue中解决chrome浏览器自动播放音频和MP3语音打包到线上的实现方法
2020/10/09 Javascript
[49:02]KG vs Infamous 2019国际邀请赛淘汰赛 败者组BO1 8.20.mp4
2020/07/19 DOTA
python中MySQLdb模块用法实例
2014/11/10 Python
最大K个数问题的Python版解法总结
2016/06/16 Python
python数据清洗系列之字符串处理详解
2017/02/12 Python
python 获取url中的参数列表实例
2018/12/18 Python
详解如何在Apache中运行Python WSGI应用
2019/01/02 Python
Python图像处理库PIL中图像格式转换的实现
2020/02/26 Python
施华洛世奇韩国官网:SWAROVSKI韩国
2018/06/05 全球购物
应届生服装设计自我评价
2013/09/20 职场文书
业务总经理岗位职责
2014/02/03 职场文书
操行评语大全
2014/04/30 职场文书
户外活动总结范文
2014/04/30 职场文书