首頁 php教程 PHP开发 CodeIgniter學習筆記 Item9--CI中的類別庫

CodeIgniter學習筆記 Item9--CI中的類別庫

Dec 29, 2016 am 10:34 AM

CodeIgniter類別庫

所有的類別庫檔案存放在system/libraries 資料夾。大多數情況下你需要預先在controller中初始化後才能使用它們:

[code]$this->load->library('class name');
登入後複製

class name是你想要使用的類別名稱。例如,要載入“表單驗證類別”,你可以這樣做:

[code]$this->load->library('form_validation');
登入後複製

建立你的類別庫檔案 

你的類別庫檔案必須保存在application/libraries 資料夾,CodeIgniter將在這個資料夾中尋找並初始化它們。

命名約定 

檔名首字母大寫。例如: Myclass.php 

類別宣告首字母大寫。例如: class Myclass 

類別的名字和檔案名稱應相同。

所有的類別應有基礎原型

[code]<?php if (!defined(&#39;BASEPATH&#39;)) exit(&#39;No direct script access allowed&#39;);
class Someclass {
    public function some_function()
    {
    }
}
/* End of file Someclass.php */
登入後複製

在所有的Controller 函數中,你可以用以下的標準方式初始化你的類別:

[code]$this->load->library(&#39;someclass&#39;);
登入後複製

當someclass 是檔案名稱時不用加上」. php」副檔名.這裡名字不分大小寫. 

一旦你自訂的類別載入完畢,你可以透過以下方式呼叫類別,注意使用小寫的名字:

[code]$this->someclass->some_function();  // 对象的实例名永远都是小写的
登入後複製

當初始化類別庫時,你可以透過第二個參數動態的傳遞陣列到類別的建構子中去:

[code]$params = array(&#39;type&#39; => &#39;large&#39;, &#39;color&#39; => &#39;red&#39;);
$this->load->library(&#39;Someclass&#39;, $params);
登入後複製

當你使用這個特性時,你必須為類別的建構子加上參數:

[code]<?php if (!defined(&#39;BASEPATH&#39;)) exit(&#39;No direct script access allowed&#39;);
class Someclass {
    public function __construct($params)
    {
        // Do something with $params
    }
}
?>
登入後複製


要在你自自在定義的類別庫中存取CodeIgniter的原始資源,你必須使用get_instance() 函數。一般來說在你的控制器函數中你可以透過$this 呼叫任何可用的CodeIgniter函數:

[code]$this->load->helper(&#39;url&#39;);
$this->load->library(&#39;session&#39;);
$this->config->item(&#39;base_url&#39;);
登入後複製

當你在自訂類別中想使用CodeIgniter原始類別時,你可以這樣做: 

首先,定義CodeIgniter物件賦給一個變數:

[code]$CI =& get_instance();
登入後複製

一旦定義某個物件為一個變數,你就可以使用那個變數名稱取代$this:

[code]$CI =& get_instance();
$CI->load->helper('url');
$CI->load->library('session');
$CI->config->item('base_url');
登入後複製

替換原始類別

將你自己的類別命名簡單的將你自己的類別命名為與原始類別一樣就能使CodeIgniter使用這個新類別.要使用這個特性,檔案名稱與類別聲明必須與原始類別完全一致。例如,要替換原始的 Email 類別庫。你必須建立一個檔案application/libraries/Email.php, 並按如下方式聲明類別:

[code]class CI_Email 
{
}
登入後複製

擴展現有類別

如果你需要在現有類別庫中加入一兩個新的功能,那就完全不必要替換整個類別庫檔案.你只需簡單地擴展(繼承)現有的類別,擴展一個類別就像在類別中增加一些例外: 

擴展的類別必須申明由父類別擴展而來。 

新擴充的類別所在的檔案必須以 MY_ 為前綴(這個選項是可設定的)。

例如,要擴展原始類別Email類別你要建立檔案application/libraries/MY_Email.php,並按如下方式在檔案中聲明:

[code]class MY_Email extends CI_Email 
{
}
登入後複製


要載入子類,你應該使用標準字元名,請不要使用前綴,例如,要載入上文說過的email擴充子類,你應該這樣寫:

[code]$this->load->library(&#39;email&#39;);
登入後複製


 以上就是CodeIgniter學習筆記Item9--CI中的類庫的內容,更多相關內容請關注PHP中文網(www.php.cn)!


本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

如何在CodeIgniter中實作自訂中介軟體 如何在CodeIgniter中實作自訂中介軟體 Jul 29, 2023 am 10:53 AM

如何在CodeIgniter中實現自訂中間件引言:在現代的Web開發中,中間件在應用程式中起著至關重要的作用。它們可以用來執行在請求到達控制器之前或之後執行一些共享的處理邏輯。 CodeIgniter作為一個流行的PHP框架,也支持中間件的使用。本文將介紹如何在CodeIgniter中實作自訂中間件,並提供一個簡單的程式碼範例。中間件概述:中間件是一種在請求

CodeIgniter中間件:加速應用程式的反應速度和頁面渲染 CodeIgniter中間件:加速應用程式的反應速度和頁面渲染 Jul 28, 2023 pm 06:51 PM

CodeIgniter中間件:加速應用程式的反應速度和頁面渲染概述:隨著網頁應用程式的複雜性和互動性不斷增長,開發人員需要使用更有效率和可擴展的解決方案來提高應用程式的效能和反應速度。 CodeIgniter(CI)是一種基於PHP的輕量級框架,提供了許多有用的功能,其中之一就是中間件。中間件是在請求到達控制器之前或之後執行的一系列任務。這篇文章將介紹如何使用

在CodeIgniter框架中使用資料庫查詢建構器(Query Builder)的方法 在CodeIgniter框架中使用資料庫查詢建構器(Query Builder)的方法 Jul 28, 2023 pm 11:13 PM

在CodeIgniter框架中使用資料庫查詢建構器(QueryBuilder)的方法引言:CodeIgniter是一個輕量級的PHP框架,它提供了許多功能強大的工具和函式庫,方便開發人員進行Web應用程式開發。其中一個令人印象深刻的功能是資料庫查詢建構器(QueryBuilder),它提供了一種簡潔而強大的方法來建立和執行資料庫查詢語句。本文將介紹如何在Co

使用PHP框架CodeIgniter開發一個即時聊天應用,提供便利的通訊服務 使用PHP框架CodeIgniter開發一個即時聊天應用,提供便利的通訊服務 Jun 27, 2023 pm 02:49 PM

隨著行動互聯網的發展,即時通訊變得越來越重要,越來越普及。對許多企業而言,即時聊天更像是一種通訊服務,提供便利的溝通方式,可以快速有效地解決業務方面的問題。基於此,本文將介紹如何使用PHP框架CodeIgniter開發一個即時聊天應用程式。了解CodeIgniter框架CodeIgniter是一個輕量級的PHP框架,提供了一系列的簡單的工具和函式庫,幫助開發者快速

PHP開發:使用 CodeIgniter 實作 MVC 模式和 RESTful API PHP開發:使用 CodeIgniter 實作 MVC 模式和 RESTful API Jun 16, 2023 am 08:09 AM

隨著Web應用程式的不斷發展,更加快速和有效率地開發應用程式變得非常重要。並且,隨著RESTfulAPI在網路應用程式中的廣泛應用,對於開發人員來說,必須理解如何建立和實作RESTfulAPI。在本文中,我們將討論如何使用CodeIgniter框架實現MVC模式和RESTfulAPI。 MVC模式簡介MVC(Model-Vie

CodeIgniter中間件:提供安全的檔案上傳和下載功能 CodeIgniter中間件:提供安全的檔案上傳和下載功能 Aug 01, 2023 pm 03:01 PM

CodeIgniter中間件:提供安全的檔案上傳和下載功能引言:在網路應用程式開發過程中,檔案上傳和下載是非常常見的功能。然而,對於安全性的考慮,處理文件上傳和下載通常需要額外的安全措施。 CodeIgniter是一個流行的PHP框架,提供了豐富的工具和函式庫來支援開發者建立安全可靠的網路應用程式。本文將介紹如何使用CodeIgniter中介軟體來實現安全的文件

php如何使用CodeIgniter5框架? php如何使用CodeIgniter5框架? Jun 01, 2023 am 11:21 AM

CodeIgniter是一個輕量級的PHP框架,採用MVC架構,支援快速開發和簡化常見任務。 CodeIgniter5是該框架的最新版本,提供了許多新的功能和改進。本文將介紹如何使用CodeIgniter5框架來建立一個簡單的Web應用程式。步驟1:安裝CodeIgniter5下載和安裝CodeIgniter5非常簡單,只需要遵循以下步驟:下載最新版本

php如何使用CodeIgniter\Config進行組態管理? php如何使用CodeIgniter\Config進行組態管理? Jun 02, 2023 pm 06:01 PM

一、CodeIgniter簡介CodeIgniter是一個輕量級且全面的PHP開發框架,旨在為Web開發人員提供快速且強大的工具來建立Web應用程式。它是一個開源的框架,使用MVC架構模式來實現快速開發和基礎功能,同時支援多種資料庫。二、Config庫簡介Config庫是CodeIgniter框架中的一個元件,用於對程式碼進行組態管理。 Config庫包含了很多

See all articles