ホームページ  >  記事  >  バックエンド開発  >  003 - CI はライブラリ内の CodeIgniter リソースを使用します

003 - CI はライブラリ内の CodeIgniter リソースを使用します

不言
不言オリジナル
2018-04-08 14:39:321084ブラウズ


クラスライブラリのget_instance()関数を使用してアクセスします CodeIgniter のネイティブ リソースであるこの関数は、CodeIgniter スーパー オブジェクトを返します。

通常、コントローラーメソッドでは $this を使用して利用可能なものをすべて呼び出します CodeIgniter メソッド:


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

ただし、$this は、独自のクラスで使用する場合、コントローラー、モデル、またはビューでのみ直接使用できます。 CodeIgniter クラスでは、次のことができます:

まず、CodeIgniter オブジェクトを変数に割り当てます:

$CI =& get_instance();

CodeIgniter オブジェクトを変数に割り当てたら、その変数を の代わりに に使用できます。 $this

$CI =& get_instance();

$CI->load->helper('url');
$CI->load->library('session');
$CI->config->item('base_url');
// etc.


注:

上記の get_instance() 関数が参照によって渡されていることがわかります:


りー

これは非常に重要なことですが、参照割り当てにより、コピーを作成する代わりに元の CodeIgniter オブジェクトを使用できるようになります。


クラスライブラリはクラスであるため、OOPの原則を最大限に活用することをお勧めします。したがって、クラス内のすべてのメソッドがCodeIgniterスーパーオブジェクトを使用できるようにするには、それを属性に割り当てることをお勧めします。 :

$CI =& get_instance();

関連する推奨事項:

002 - PDO と MySQLi の違いと選択肢

001 - PDO の使用法の詳細な分析

以上が003 - CI はライブラリ内の CodeIgniter リソースを使用しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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