SpeedPHP/spController控制器类
|
SpeedPHP | 快速入门 | 访问交互 | 数据操作 | 框架概述 | 模板引擎 | 优化加速 | 开发指南 | 数据模型 | API参考 |
基础控制器程序父类,应用程序中的每个控制器程序都应继承于spController。
成员变量[ ]
public
$v -- 视图对象
成员函数[ ]
public
- __construct -- 构造函数
- jump -- 用户级默认跳转程序
- error -- 用户级默认错误提示程序
- success -- 用户级默认成功提示程序
- __set -- 魔术函数,获取赋值作为模板内变量
- display -- 输出模板
- __call -- 魔术函数,实现对控制器扩展类的自动加载
- getView -- 获取视图对象
- setLang -- 设置当前用户的语言
- getLang -- 获取当前用户的语言
位置:spController类位于 SP_PATH/Core/spController.php
函数详细[ ]
__construct[ ]
构造函数
void __construct(void)
spController类的构造函数,进行初始化视图类的操作。
请注意,如spController的子类,即是继承于spController的控制器类中覆盖了构造函数__construct(),开发者需要在子类的构造函数中调用父类的__construct(),才可以保证视图类的有效性。
class mycontroller extends spController{
function __construct(){
// 一些操作
parent::__construct();
}
}
jump[ ]
用户级默认跳转程序
void jump(url url, int delay)
参数:
- url url 需要前往的地址
- int delay 延迟时间
jump()与error()、success()一样,都是框架控制器类默认的用户级方法函数,建议开发者在实际开发中可以覆盖这些方法,以便提供更好的跳转提示信息。
在控制器类内可以使用以下代码进行网址跳转操作:
class mycontroller extends spController{
function myaction(){
// 一些操作
$this->jump(spUrl("main","index"),3); // 3秒后返回首页
}
}
=error[ ]
用户级默认错误提示程序,应用程序的控制器类可以覆盖该函数以使用自定义的错误提示。
void error(string msg, url url)
参数:
- string msg 提示的信息
- url url 需要前往的地址
在控制器类内可以使用以下代码进行错误信息提示及跳转:
class mycontroller extends spController{
function myaction(){
// 一些操作
$this->error("登录出错,请重新登录。。。",spUrl("user","login"));
}
}
success[ ]
用户级默认成功提示程序,应用程序的控制器类可以覆盖该函数以使用自定义的成功提示。
void success(string msg, url url)
参数:
- string msg 提示的信息
- url url 需要前往的地址
在控制器类内可以使用以下代码进行成功信息提示及跳转:
class mycontroller extends spController{
function myaction(){
// 一些操作
$this->success("登录成功",spUrl("admin","index"));
}
}
__set[ ]
魔术函数,获取赋值作为模板内变量
__set()让开发者可以在控制器类中执行以下操作:
class mycontroller extends spController{
function myaction(){
// 一些操作
$this->result = "这里是结果"; // 将值传送到模板的变量$result中。
}
}
display[ ]
输出模板
mixed display(file_name tplname, bool output)
参数:
- file_name tplname 模板路径及名称
- bool output 是否直接显示模板,设置成FALSE将返回HTML而不输出
返回:
- 如output为TRUE,display()将是直接显示模板处理后的页面。
- 如output为FALSE,display()将返回页面的HTML代码,而不会显示页面内容。
$this->display("html/mytpl.html");
// 等同于
echo $this->display("html/mytpl.html", FALSE);
__call[ ]
魔术函数,实现对控制器扩展类的自动加载
__call()可以让spController类支持更广泛的用途。
getView[ ]
获取视图对象
object & getView(void)
调用getView()将获取到视图类的实例。在对视图类进行高级操作时使用。
返回:
返回视图类的实例,默认视图类即是Smarty实例。
class mycontroller extends spController{
function myaction(){
// 一些操作
$smarty_object = $this->getView();
dump($smarty_object);
}
}
参考来源[ ]
http://speedphp.com/manual.html
SpeedPHP使用手册导航 | ||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|