控制器各个方法的使用
分配数据到模版
方法名:assign
用法:$this->assign(string 模版变量名, mixed 变量);
php
namespace app\web\controller;
use Timo\Core\Controller;
class Course extends Controller
{
public function show($course_id = 0)
{
$course_id = (int) $course_id;
if ($course_id <= 0) {
return $this->error('参数错误');
}
$course = []; //从课程模型里面获取的数据
$this->assign('title', $course['title']);
$this->assign('course', $course);
return $this->render();
}
}
渲染模版并返回结果
方法名:render
用法:$this->render(string [模版名称], array [模版数据]);
如果模版名称和控制器、操作同名的话就不用传模版名称,如:
app
|--controller
| |--Course.php
|--template
| |--Course
| | |--index.tpl.php
| | |--show.tpl.php
静态缓存
我们可以很方便的通过render方法来实现页面的静态化,只需将render方法返回的数据保存到文件即可
成功跳转
方法名:success
用法:$this->success(string 成功提示语, string 跳转的URL, array url参数, string 请求参数, 附带的数据, int 等待几秒跳转);
错误跳转
方法名:error
用法:$this->error(string 错误提示语, string 跳转的URL, array url参数, string 请求参数, 附带的数据, int 等待几秒跳转);
成功错误跳转的所有参数都是可选的
从定向
方法名:redirect
用法:$this->redirect($url, $params = array(), $query_string = '');