php $CI =& get_instance();

WBOY
WBOYオリジナル
2016-08-08 09:28:361443ブラウズ

PHP の初心者、$CI =& get_instance();

というように誰かが書いているのを見ました。

カスタム クラス ライブラリ内の CodeIgniter の元のリソースにアクセスするには、get_instance() 関数を使用する必要があります。この関数は CodeIgniter スーパー オブジェクトを返します。
一般的に、コントローラー関数では $this CodeIgniter 関数を通じて使用可能なものを呼び出すことができます。 :
$this->load->helper('url');
$this->load->library('session');
$this->config->item( 'base_url' );
etc.
$this は、独自のコントローラー、モデル、ビューでのみ直接動作します。CodeIgniter のオリジナル クラスをカスタム クラスで使用したい場合は、次のようにすることができます。
まず、CodeIgniter オブジェクトを定義します。 variable:
$CI =& get_instance();
オブジェクトを変数として定義すると、$this:
$CI =& get_instance();
$CI- >load-> の代わりにその変数名を使用できます。 ;helper('url');
$CI->load->library('session');
$CI->config->item('base_url');
など
注: get_instance() 関数が参照によって渡されることに注意してください:
$CI =& get_instance();
これは非常に重要です。参照によって変数を割り当てると、コピーを作成するのではなく、元の CodeIgniter オブジェクトが使用されます。また、注意してください。注: PHP 4 を使用する場合は、クラスのコンストラクターで get_instance() を呼び出さないことをお勧めします。PHP4 では、クラスが完全にインスタンス化された後にのみオブジェクトが存在するため、コンストラクター内にある CI スーパー オブジェクトを参照する際に問題が発生します。

上記では、関連する内容も含めて php $CI =& get_instance(); を紹介しています。PHP チュートリアルに興味のある友人に役立つことを願っています。

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