検索
ホームページphp教程PHP开发CodeIgniter の学習メモ 項目 9 -- CI のクラス ライブラリ

CodeIgniter クラス ライブラリ

すべてのクラス ライブラリ ファイルは system/libraries フォルダーに保存されます。ほとんどの場合、使用する前にコントローラーで初期化する必要があります:

[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 */

すべてのコントローラー関数で、次の標準的な方法でクラスを初期化できます:

[code]$this->load->library(&#39;someclass&#39;);

someclass がファイル名の場合、「.php」を追加する必要はありません。 " 拡張子。ここでの名前は大文字と小文字が区別されません。

カスタム クラスが読み込まれたら、小文字の名前を使用することに注意しながら、次の方法でクラスを呼び出すことができます:

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

クラス ライブラリを初期化するとき、 2 番目のパラメータを通じてクラスのコンストラクタに配列を動的に渡すことができます:

[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 
{
}

既存のクラスを拡張する

既存のクラス ライブラリに 1 つまたは 2 つの新しい機能を追加する必要がある場合は、次のようにします。クラス ライブラリ ファイル全体を置き換える必要はありません。既存のクラスを拡張 (継承) するだけで済みます。クラスの拡張は、クラスに例外を追加するのと同じです。

新しく拡張されたクラスを含むファイルには、プレフィックス MY_ を付ける必要があります (このオプションは構成可能です)。

たとえば、元の Email クラスを拡張するには、application/libraries/MY_Email.php ファイルを作成し、ファイル内で次のように宣言する必要があります:


[code]class MY_Email extends CI_Email 
{
}

拡張されたサブクラスをロードするには、たとえば、上記のメール拡張サブクラスをロードするには、次のように記述します。


[code]$this->load->library(&#39;email&#39;);


上記は、CodeIgniter の学習メモの内容です。Item9-クラス ライブラリです。 CI では、詳細 関連コンテンツについては、PHP 中国語 Web サイト (www.php.cn) に注目してください。


声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

ホットAIツール

Undresser.AI Undress

Undresser.AI Undress

リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover

AI Clothes Remover

写真から衣服を削除するオンライン AI ツール。

Undress AI Tool

Undress AI Tool

脱衣画像を無料で

Clothoff.io

Clothoff.io

AI衣類リムーバー

AI Hentai Generator

AI Hentai Generator

AIヘンタイを無料で生成します。

ホットツール

MinGW - Minimalist GNU for Windows

MinGW - Minimalist GNU for Windows

このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

PhpStorm Mac バージョン

PhpStorm Mac バージョン

最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

SublimeText3 Linux 新バージョン

SublimeText3 Linux 新バージョン

SublimeText3 Linux 最新バージョン

SecLists

SecLists

SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

AtomエディタMac版ダウンロード

AtomエディタMac版ダウンロード

最も人気のあるオープンソースエディター