要你自定义的类库中访问CodeIgniter的原始资源,你必须使用 get_instance() 函数.这个函数返回一个CodeIgniter super object.

一般来说在你的控制器函数中你可以通过 $this 调用任何可用的CodeIgniter函数:

$this->load->helper('url');
$this->load->library('session');
$this->config->item('base_url');
etc.
$this, 只直接作用在你自己的控制器,模型和视图中.当你在自定义类中想使用CodeIgniter原始类时,你可以这样做:

首先,定义CodeIgniter对象赋给一个变量:

$CI =& get_instance();

一旦定义某个对象为一个变量,你就可以使用那个变量名 取代 $this:

$CI =& get_instance();

$CI->load->helper('url');
$CI->load->library('session');
$CI->config->item('base_url');
etc.
注意: 你将注意到get_instance()这个函数通过被引用的方式被传递:

$CI =& get_instance();

这十分重要. 通过引用的方式赋给变量将使使用原始的CodeIgniter对象,而不是创建一个拷贝

同时,请注意: 如果你使用php 4,那么请最好不要在类的构造函数中调用 get_instance() .php4在引用位于构造函数中的CI super object时存在问题,因为对象只有在类完全实例化后才存在.

转载于:https://blog.51cto.com/njyanglinghui/1090202

codeigniter中 get_instance()的应用相关推荐

  1. 如何在CodeIgniter中压缩和解压缩文件

    本教程的前半部分介绍了使用内置CodeIgniter API创建zip文件的不同方法. 我们将看到如何在服务器上创建和保存zip文件,以及如何使它们可供最终用户下载. 下半部分讨论如何解压缩文件. 为 ...

  2. php ci model条件查询,php – CodeIgniter中的多条件WHERE子句

    我想删除一些像核心PHP中的查询这样的数据 WHERE user_id=$id AND sender_id=$send_id OR user_id=$send_id AND sender_id=$id ...

  3. php $db-gt;query 行数,php – 如何在CodeIgniter中组合query()和limit()方法

    是否可以在codeigniter中执行类似的操作: publi function getcat($category_id) { $query = "(SELECT cat.id, cat.t ...

  4. 如何在CodeIgniter中使用会话数据

    作为CodeIgniter开发人员,了解如何使用核心会话库对您而言非常重要. 当然,您始终可以使用默认的$_SESSION语法,但是始终建议使用包装器. 从如何加载会话库开始,我们将继续讨论如何添加, ...

  5. php codeigniter安全,php – codeigniter中的安全性

    下午好, 我对CodeIgniter的安全性有一些疑问,首先是: 我有一个控制器:news.php,其中有一个名为view的方法 例: class News extends CI_Controller ...

  6. CodeIgniter中的分页:完整指南

    使用任何全栈式Web应用程序框架的好处是您不必担心诸如输入处理,表单验证之类的常见任务,因为该框架已经为这些功能提供了包装. 因此,它使您可以专注于应用程序的业务逻辑,而不必一遍又一遍地重新发明轮子. ...

  7. codeigniter中创建自己的类库

    2019独角兽企业重金招聘Python工程师标准>>> 当我们使用术语"类库"时,我们一般指的是位于libraries 文件夹中的类,它们在wiki的" ...

  8. php controller 间调用,php – 在CodeIgniter中的另一个Controller中调用Controller函数

    我的codeigniter应用程序中有一个控制器"user".这个控制器有一个名为logged_user_only()的函数: public function logged_use ...

  9. codeigniter mysql -1_在CodeIgniter中使用现有的MySQL数据库

    在我的PHP网站中,我使用SiteTranslator脚本来翻译成30种语言的网站. 每个翻译都存储在自己的表中(text_en,text_de ...),每个表有3列(textKey,textVal ...

最新文章

  1. 古朴西安:乘汽船去机场
  2. ipch文件夹和.sdf文件
  3. java泛型 简书_一文带你认识Java泛型基础
  4. JAVA实现链表的反转(《剑指offer》)
  5. 2019年企业云呈现五大技术发展趋势
  6. 按需加载图片(图片懒加载)
  7. 退役笔记一#MySQL = lambda sql : sql + #39; Source Code 4 Explain Plan #39;
  8. oracle rman 跨版本恢复 11.2.0.3- 11.2.0.4
  9. Cloud Native未来值得关注的方向:Service Mesh简介
  10. c6011取消对null指针的引用_C++中的引用
  11. 一个程序设计试题:读取2维字符数组,判断出表示的数字
  12. 【每日SQL打卡】​​​​​​​​​​​​​​​DAY 21丨报告系统状态的连续日期【难度困难】​
  13. 弹出层中都可以用的复制功能
  14. c语言16位字节只能用到255,《C语言程序设计》月考试题(第三章).doc
  15. Halcon学习-光源、镜头、相机选型
  16. ChIPQC——对ChIP-seq的质量评估
  17. 灌浆料的弹性模量计算_防城港市(灌浆料)月度
  18. cppc文件无法正常输出汉字,将文件修改为UTF-8格式
  19. status 状态为 pending
  20. 离散数学笔记(一)【集合、命题逻辑 、谓词逻辑】

热门文章

  1. 开源的代理服务器HAProxy 易遭严重的 HTTP 请求走私攻击
  2. Jupyter notebook实现远程登陆
  3. spark 学习总结
  4. Python爬虫-《神雕侠侣》
  5. Redis 未授权访问漏洞利用
  6. PLSQL实现显示当天是星期几
  7. 根据中心点、半径长度和角度画点
  8. 【万里征程——Windows App开发】数据绑定——简单示例、更改通知、数据转换...
  9. [WildPackets.OmniPeek].OmniPeek.4.0.1
  10. MFC 对Button控件的重绘方法(多种)