创建控制器及使用方法


创建控制器

以web为例, 在app\web\controllers中创建一个User.php文件,文件内容如下:

namespace app\web\controllers;

use Cross\MVC\Controller;

class User extends Controller
{
	function index()
	{
		echo 'hello';
	}
}

通过浏览器 http://domain/skeleton/htdocs/web/user 来访问,这时页面会输出 hello >建议: 每个app都应该有一个基类控制器, 基类控制器继承至Cross\MVC\Controller, 其余控制器从基类继承, 这样更灵活.

基本使用方法

1. 判断请求类型

$this->is_post()
$this->is_get()
$this->is_cli()
$this->is_ajax_request()

以上方法用于判断当前请求的类型,满足条件返回TRUE

2. 跳转到其他控制器

$this->to([controller:action, params, sec])

跳转到指定页面,该方法实际是一个 $this->view->link() 的连接, 生成url后用header函数跳转.

3. 调用视图

$this->display([data, method, http_response_status])

调用视图控制,一个$this->view->display()的连接。

4. 加载配置文件

$this->loadConfig("配置文件名")

加载config目录下指定的配置文件, 返回一个Config对象

5. 解析带前缀的文件路径

$this->getFilePath()

::project::的缺省表示方法, 表示项目根目录,

app        APP根目录
cache      缓存目录
config     配置文件目录
static     静态资源目录
project    项目根目录