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使用手册导航 | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|