首页 > PHP开源 > 如何创建和使用控制器–kohana3使用手册

如何创建和使用控制器–kohana3使用手册

2011年1月29日 发表评论 阅读评论

控制器是一个应用程序中位于模型和视图之间的一个类文件。当数据需要被改变时,控制器将信息传递给模型。当数据需要加载时,控制器从模型请求得到信息。控制器将信息从模型传递到视图,最终显示给客户。

控制器的约定

■ 必须位于控制器(或子控制器)目录

■ 控制器文件名必须小写,如:articles.php

■ 控制器中的类必须和文件名关联,首字母大写并用 Controller_ 开头。如:Controller_Articles

■ 必须继承 Controller 父类

■ 控制器中需要被外部访问的方法必须定义为 public 并且用 action_ 开头(如:public action_index()),如果不是这样定义,那么就不能通过路由请求到该方法。

■ 要想从控制器输出信息,给 $this->request->response 赋值就可

请求一个控制器

默认情况下从 url 请求一个控制器可以在 url 中附加上控制器名和动作名,如下:

http://example.com/index.php/<控制器>/<动作>

例如。下面请求了 basic 控制器的 index 动作

http://example.com/index.php/basic/index

创建一个控制器

应用程序中的控制器一般放在 application/classes/controller 文件夹中。如果是作为模块那么则放在 module/模块名/classes/controller 文件夹下。

Basic 控制器

  application/classes/controller/basic.php
  class Controller_Basic extends Controller
  {
      public function action_index()
      {
          $this->request->response = "Hello World";
      }
  }

现在你如果访问 你的域名.com/basic/index (或者用URL 重写也就rewrite功能访问
你的域名.com/index.php/basic/index)你就会看到
Hello World

路由一个URI 到控制器

Kohana 3.0的 Route 类 支持你无限制的设置特殊格式的请求到指定的控制器和动作。

可以在你的 application/bootstrap.php 文件中定义路由,或者在 module/你的模块/init.php 文件中使用 Route::set() 方法

分类: PHP开源 标签:
  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.