服务器之家:专注于服务器技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|JAVA教程|ASP教程|

CI框架附属类用法分析

2019-07-08 12:48菜鸟学编程$ PHP教程

这篇文章主要介绍了CI框架附属类用法,结合实例形式分析了CI框架附属类相关资源访问操作技巧,需要的朋友可以参考下

本文实例讲述了CI框架附属类用法。分享给大家供大家参考,具体如下:

有些时候,你可能想在你的控制器之外新建一些类,但同时又希望 这些类还能访问 CodeIgniter 的资源

任何在你的控制器方法中初始化的类都可以简单的通过 get_instance() 函数来访问 CodeIgniter 资源。这个函数返回一个 CodeIgniter 对象。

通常来说,调用 CodeIgniter 的方法需要使用 $this

$this->load->helper('url');
$this->load->library('session');
$this->config->item('base_url');

但是 $this 只能在你的控制器、模型或视图中使用,如果你想在 你自己的类中使用 CodeIgniter 类,你可以像下面这样做:

首先,将 CodeIgniter 对象赋值给一个变量:

$CI =& get_instance();

一旦你把 CodeIgniter 对象赋值给一个变量之后,你就可以使用这个变量 来 代替 $this

$CI =& get_instance();
$CI->load->helper('url');
$CI->load->library('session');
$CI->config->item('base_url');

如果你在类中使用``get_instance()`` 函数,最好的方法是将它赋值给 一个属性 ,这样你就不用在每个方法里都调用 get_instance() 了。

例如:

class Example {
  protected $CI;
  // We'll use a constructor, as you can't directly call a function
  // from a property definition.
  public function __construct()
  {
    // Assign the CodeIgniter super-object
    $this->CI =& get_instance();
  }
  public function foo()
  {
    $this->CI->load->helper('url');
    redirect();
  }
  public function bar()
  {
    $this->CI->config->item('base_url');
  }
}

在上面的例子中, foo() 和 bar() 方法在初始化 Example 类之后都可以正常工作,而不需要在每个方法里都调用 get_instance() 函数。

希望本文所述对大家基于CodeIgniter框架的PHP程序设计有所帮助。

延伸 · 阅读

精彩推荐
  • PHP教程PHP的mysqli_rollback()函数讲解

    PHP的mysqli_rollback()函数讲解

    今天小编就为大家分享一篇关于PHP的mysqli_rollback()函数讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧...

    php参考手册1722019-06-29
  • PHP教程tp5(thinkPHP5)框架实现多数据库查询的方法

    tp5(thinkPHP5)框架实现多数据库查询的方法

    这篇文章主要介绍了tp5(thinkPHP5)框架实现多数据库查询的方法,结合实例形式分析了thinkPHP5框架多数据库查询的相关配置、初始化及调用相关操作技巧,需要的朋友可以参考下...

    TBHacker2802019-07-04
  • PHP教程PHP+mysql实现的三级联动菜单功能示例

    PHP+mysql实现的三级联动菜单功能示例

    这篇文章主要介绍了PHP+mysql实现的三级联动菜单功能,涉及mysql数据库创建、数据添加及php读取mysql、创建联动菜单相关操作技巧,需要的朋友可以参考下...

    ybhjx2732019-06-13
  • PHP教程PHP filesize函数用法浅析

    PHP filesize函数用法浅析

    在本篇文章中我们给大家整理了关于PHP中filesize函数的用法和相关知识点,有需要的朋友们学习下。...

    laozhang4392019-06-14
  • PHP教程PHP5.5新特性之yield理解与用法实例分析

    PHP5.5新特性之yield理解与用法实例分析

    这篇文章主要介绍了PHP5.5新特性之yield理解与用法,结合实例形式分析了php5.5 yield生成器功能、原理、使用方法及相关操作注意事项,需要的朋友可以参考下...

    moliyiran3862019-07-04
  • PHP教程PHP中文处理 中文字符串截取(mb_substr)和获取中文字符串字数

    PHP中文处理 中文字符串截取(mb_substr)和获取中文字符串字数

    PHP中文处理 中文字符串截取(mb_substr)和获取中文字符串字数,需要的朋友可以参考下。...

    脚本之家4012019-05-29
  • PHP教程PHP 7.4.0 首个版本 alpha 1 发布

    PHP 7.4.0 首个版本 alpha 1 发布

    PHP 团队今天 宣布推出 PHP 7.4.0 首个版本 PHP 7.4.0 Alpha 1。 7.4 新特性包括: 预加载 FFI 类属性的类型支持 NULL 合并赋值运算符 弃用 WDDX 扩展 简化匿名函数 新增 mb_str_split 函数 始终可用的 Hash 扩展 有关新功能和其他变更的更多信息,...

    开源中国4202019-06-15
  • PHP教程Laravel框架自定义验证过程实例分析

    Laravel框架自定义验证过程实例分析

    这篇文章主要介绍了Laravel框架自定义验证过程,结合实例形式分析了Laravel框架自定义验证的相关原理、路由、模型等操作技巧,需要的朋友可以参考下...

    trouble-i-am-in2452019-06-21