控制器初始化方法_initialize
来源:互联网 发布:外网管理软件 编辑:程序博客网 时间:2024/05/21 10:21
如果你的控制器类继承了\think\Controller
类的话,可以定义控制器初始化方法_initialize
,在该控制器的方法调用之前首先执行。
例如:
namespace app\index\controller;use think\Controller;class Index extends Controller{ public function _initialize() { echo 'init<br/>'; } public function hello() { return 'hello'; } public function data() { return 'data'; }}
如果访问
http://localhost/index.php/index/Index/hello
会输出
inithello
如果访问
http://localhost/index.php/index/Index/data
会输出
initdata
在PHP中,_initialize()方法相当于php5中的_construct()函数
其主要用于将所有公用的东西在此函数里声明!
具体应用:
class Action extends MyTpl{
private $timer;
/* 这是一个主运行方法,用户所有的访问都是通过这个方法开始运行的
* 不需要参数,没有返回值,通过这个方法加载用户的每个执行动作
*/
function run(){
$this->timer=new Timer();
//如果声明了_initialize()方法则去调用这个方法,这样用户的每个动作都通过这个方法,可以用于做权限
if(method_exists($this, '_initialize')){
$this->_initialize();
}
$act=isset($_GET["a"])?$_GET["a"]:"index";
//调用用户访问的方法,例如:admin.php?m=user&a=add去访问user模块中的add方法
if(method_exists($this,$act)){
eval('$this->'.$act.'();'); //如果$act为add,相当于$this->add();
}else{
echo '没有这个动作!';
}
}
- 控制器初始化方法_initialize
- Thinkphp 控制器内初始化方法_initialize 及前置后置方法
- thinkphp5中的_initialize方法
- Thinkphp框架的_initialize()方法
- __construct 与 _initialize 方法的区别
- IOS初始化控制器的两种方法
- yii初始化控制器的两种方法
- UI 指派初始化方法 视图控制器 button响应方法
- PHP初始化验证控制器全部方法的SESSION,__initialize()
- s5pv210 LCD控制器初始化
- 控制器初始化和presentViewController
- yii2 控制器初始化和对象初始化
- 纯代码和使用Storyboard的时候控制器中初始化方法的执行
- s5pc100平台串口控制器初始化
- 微博项目---初始化控制器
- iOS视图控制器初始化问题
- 使用IB初始化视图控制器
- angular-$rootScope与$scope-在多个控制器中进行全局诗句的初始化-run()方法使用
- MMU笔记(二)
- Eclipse背景颜色修改
- 在sql server中如何用sql语句查看表结构信息?
- 猿团与中国电信达成战略合作 推动“双创”工作深入开展
- Android 最完善的身份证验证,亲测可用!
- 控制器初始化方法_initialize
- mysql安装与配置
- iOS--一份详细的pod清单
- 电阻的认识和选型
- Web调试工具-Firebug
- 常用CSS选择器
- 【u245】机房病毒
- android studio 导入工程
- nginx.org的Configuration file measurement units页面翻译