ci get_instance()
2024-09-08 00:31:19
你随便下个CI框架的源码都会看到很多的get_instance() 函数,这个函数是用来获取CI 的全局超级对象,CI 是单例模式的框架,所有全局有一个超级对象。因为只有一个实例,所以无论这个函数使用多少次都不会消耗资源的。一般来说,只有在helper或library中才使用get_instance。
以前我们都是这样用的:$this->load->library('session');
$this只作用在你自己的控制器、模型、视图中,如果你在自定义的类中也想使用CI的函数话,你就可以这样做:
//通过引用的方式赋给变量将使用原始的 CodeIgniter 对象
$ci = &get_instance();
//这样就可以使用ci的函数了
$ci->load->library('session');
以上是网上的,以下是自己遇到的:
-------------------------------------------------
超级全局变量还可以存储:类似这样:
$instance = &get_instance();
$router = $instance->router;
$page = strtolower($router->class . '/' . $router->method);
$auth = $instance->session->userdata('authorization');
$instance->data['user'] = $last;
最新文章
- SQList
- 1.oracle 12c基础
- CentOS系统启动流程你懂否
- Windows Phone 8 解锁提示IpOverUsbSvc问题——IpOverUsbEnum返回No connected partners found解决方案
- 响应式布局(Responsive layout,RL)的简单Demo
- CodeForces 304C
- Hololens开发笔记之Gesture手势识别(基本介绍)
- SSIS ->;>; Parameter
- 在Ubuntu下安装imx6linux系统的交叉编译环境遇到的问题总结
- Codeforces 372
- SPRING IN ACTION 第4版笔记-第九章Securing web applications-001-SpringSecurity简介(DelegatingFilterProxy、AbstractSecurityWebApplicationInitializer、WebSecurityConfigurerAdapter、@EnableWebSecurity、@EnableWebMvcS)
- Android Studio HelloWorld
- C# 编写服务 Windows service
- 如何解决KEIL 5 编KEIL4同RTX系统的project解
- 升级WIN10 (9879)后IE无响应的解决办法
- Python进阶【第八篇】迭代器和生成器
- 【转】java平台的编码问题 getByte()所用编码
- 我的第二个Python小程序
- BZOJ4604:The kth maximum number
- Java I/O模型