Zend Framework动作控制器用法示例

5年以前  |  阅读数:1122 次  |  编程语言:PHP 

本文实例讲述了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程序设计有所帮助。

 相关文章:
PHP分页显示制作详细讲解
SSH 登录失败:Host key verification failed
获取IMSI
将二进制数据转为16进制以便显示
文件下载
贪吃蛇
获取IMEI
双位运算符
发送邮件
PHP自定义函数获取搜索引擎来源关键字的方法
Java生成UUID
提取后缀名
年的日历图
在Zeus Web Server中安装PHP语言支持
让你成为最历害的git提交人
Yii2汉字转拼音类的实例代码
再谈PHP中单双引号的区别详解
指定应用ID以获取对应的应用名称
Python 2与Python 3版本和编码的对比
php封装的page分页类完整实例