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