CI框架附屬類用法分析
本文實(shí)例講述了CI框架附屬類用法。分享給大家供大家參考,具體如下:
有些時(shí)候,你可能想在你的控制器之外新建一些類,但同時(shí)又希望 這些類還能訪問 CodeIgniter 的資源
任何在你的控制器方法中初始化的類都可以簡單的通過 get_instance() 函數(shù)來訪問 CodeIgniter 資源。這個(gè)函數(shù)返回一個(gè) CodeIgniter 對象。
通常來說,調(diào)用 CodeIgniter 的方法需要使用 $this
$this->load->helper('url');
$this->load->library('session');
$this->config->item('base_url');
但是 $this 只能在你的控制器、模型或視圖中使用,如果你想在 你自己的類中使用 CodeIgniter 類,你可以像下面這樣做:
首先,將 CodeIgniter 對象賦值給一個(gè)變量:
$CI =& get_instance();
一旦你把 CodeIgniter 對象賦值給一個(gè)變量之后,你就可以使用這個(gè)變量 來 代替 $this
$CI =& get_instance();
$CI->load->helper('url');
$CI->load->library('session');
$CI->config->item('base_url');
如果你在類中使用``get_instance()`` 函數(shù),最好的方法是將它賦值給 一個(gè)屬性 ,這樣你就不用在每個(gè)方法里都調(diào)用 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 類之后都可以正常工作,而不需要在每個(gè)方法里都調(diào)用 get_instance() 函數(shù)。
更多關(guān)于CodeIgniter相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《codeigniter入門教程》、《CI(CodeIgniter)框架進(jìn)階教程》、《php優(yōu)秀開發(fā)框架總結(jié)》、《ThinkPHP入門教程》、《ThinkPHP常用方法總結(jié)》、《Zend FrameWork框架入門教程》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《php+mysql數(shù)據(jù)庫操作入門教程》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家基于CodeIgniter框架的PHP程序設(shè)計(jì)有所幫助。
相關(guān)文章
PHP 數(shù)據(jù)結(jié)構(gòu)隊(duì)列(SplQueue)和優(yōu)先隊(duì)列(SplPriorityQueue)簡單使用實(shí)例
這篇文章主要介紹了PHP 數(shù)據(jù)結(jié)構(gòu)隊(duì)列(SplQueue)和優(yōu)先隊(duì)列(SplPriorityQueue)簡單使用實(shí)例,需要的朋友可以參考下2015-05-05
PHP設(shè)計(jì)模式之裝飾器(裝飾者)模式(Decorator)入門與應(yīng)用詳解
這篇文章主要介紹了PHP設(shè)計(jì)模式之裝飾器(裝飾者)模式(Decorator),結(jié)合實(shí)例形式詳細(xì)分析了PHP裝飾者模式的概念、原理、用法及相關(guān)操作注意事項(xiàng),需要的朋友可以參考下2019-12-12
ThinkPHP類似AOP思想的參數(shù)驗(yàn)證的實(shí)現(xiàn)方法
這篇文章主要介紹了ThinkPHP類似AOP思想的參數(shù)驗(yàn)證的實(shí)現(xiàn)方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12
PHP 中 var_export、print_r、var_dump 調(diào)試中的區(qū)別
這篇文章主要介紹了PHP 中 var_export、print_r、var_dump 調(diào)試中的區(qū)別,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2018-06-06
yii2 modal彈窗之ActiveForm ajax表單異步驗(yàn)證
這篇文章主要介紹了yii2 modal彈窗之ActiveForm ajax表單驗(yàn)證的相關(guān)資料,非常不錯(cuò)具有參考借鑒價(jià)值,需要的朋友可以參考下2016-06-06
Laravel 中使用 Vue.js 實(shí)現(xiàn)基于 Ajax 的表單提交錯(cuò)誤驗(yàn)證操作
這篇文章主要介紹了Laravel 中使用 Vue.js 實(shí)現(xiàn)基于 Ajax 的表單提交錯(cuò)誤驗(yàn)證功能,非常不錯(cuò),具有參考借鑒價(jià)值,需要的朋友可以參考下2017-06-06

