Zend Framework动作控制器用法示例
本文实例讲述了zend framework动作控制器用法。分享给大家供大家参考,具体如下:
动作控制器简介
为了使用zend_controller_action类,需要在实际控制器类中把它子类化。
代码:
<?php class foocontroller extends zend_controller_action{ public function baraction(){ //do something } public function bazaction(){ //do something } }
说明:上述foocontroller类,定义了两个动作,bar和baz。
对象初始化
初始化更合适的方法来定制实例化是使用init()方法。该方法是在__construct()里的最后一个调用任务。
代码:
<?php class foocontroller extends zend_controller_action{ public function init(){ $this->db = zend_db::factory('pdo_mysql',array( 'host'=>'myhost', 'username'=>'user', 'password'=>'xxxx', 'dbname'=>'website' )); } }
说明:上述代码就在初始化对象的同时实现了对数据库的连接。
访问器
动作控制器可以包括很多内容,如请求对象、响应对象、调用参数、请求参数。这些内容都可以通过相应的访问器方法进行访问。
请求对象可以通过getrequest()方法来获取,执行该方法将返回一个zend_controller_request_abstract实例。
代码:
$module = $this->getrequest()->getmodulename();//获取模块名称 $controller = $this->getrequest()->getcontrollername();//获取控制器名称 $action = $this->getrequest()->getactionname();//获取动作名称
响应对象可以通过getresponse()方法来获取,执行该方法将返回一个zend_controller_response_abstract实例。
请求对象的请求参数包括任意get或get或_post参数。为了读取这些参数,可以使用_getparam($key)或_getallparams()方法。
视图集成方法
视图初始化
执行initview()方法将初始化视图对象。
解析视图
render()方法用于解析视图
代码:
<?php class mycontroller extends zend_controller_action{ public function fooaction(){ //renders my/foo.phtml $this->render(); //renders my/bar.phtml $this->render('bar'); //renders baz.phtml $this->render('baz',null,true);//第三个参数,指定是否使用控制器目录作为子目录,true表示不使用 //renders my/login.phtml to the 'form' segment of the response object $this->render('login','form'); } }
其他方法
_forword(),该方法执行另外一个动作
_redirect(),该方法重定向到另外一个地方
更多关于zend相关内容感兴趣的读者可查看本站专题:《zend framework框架入门教程》、《php优秀开发框架总结》、《yii框架入门及常用技巧总结》、《thinkphp入门教程》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家基于zend framework框架的php程序设计有所帮助。
下一篇: 详解 Java继承关系下的构造方法调用
推荐阅读
-
Zend Framework教程之Loader以及PluginLoader用法详解
-
Zend Framework教程之Autoloading用法详解
-
Zend Framework分发器用法示例
-
Zend Framework教程之前端控制器Zend_Controller_Front用法详解
-
Zend Framework路由器用法实例详解
-
Zend Framework教程之Resource Autoloading用法实例
-
Zend Framework动作控制器用法示例
-
Zend Framework前端控制器用法示例
-
Zend Framework教程之Application和Bootstrap用法详解
-
Zend Framework动作助手Redirector用法实例详解