Anfänger in PHP, ich habe jemanden so schreiben sehen: $CI =& get_instance();
Um auf die ursprünglichen Ressourcen von CodeIgniter in Ihrer benutzerdefinierten Klassenbibliothek zuzugreifen, müssen Sie die Funktion get_instance() verwenden. Diese Funktion gibt ein CodeIgniter-Superobjekt zurück.
Im Allgemeinen können Sie in Ihrer Controller-Funktion $ this-Aufrufe übergeben jede verfügbare CodeIgniter-Funktion:
$this->load->helper('url');
$this->load->library('session');
$ this-> ;config->item('base_url');
etc.
$this funktioniert nur direkt in Ihren eigenen Controllern, Modellen und Ansichten, wenn Sie es in einer benutzerdefinierten Klasse verwenden möchten, wenn Sie den ursprünglichen CodeIgniter verwenden Klasse können Sie Folgendes tun:
Definieren Sie zunächst das CodeIgniter-Objekt und weisen Sie es einer Variablen zu:
$CI =& get_instance();
Sobald Sie ein Objekt als Variable definiert haben, können Sie That verwenden Variablenname ersetzt $this:
$CI =& get_instance();
$CI->load->helper('url');
$CI->load->library ( 'session');
$CI->config->item('base_url');
etc.
Hinweis: Sie werden feststellen, dass auf die Funktion get_instance() verwiesen wird. Pass:
$CI =& get_instance();
Dies ist sehr wichtig. Wenn Sie eine Variable per Referenz zuweisen, wird das ursprüngliche CodeIgniter-Objekt verwendet, anstatt eine Kopie zu erstellen.
Außerdem beachten Sie bitte: Wenn Sie PHP 4 verwenden, dann besser nicht Beim Aufruf von get_instance() im Konstruktor der Klasse tritt ein Problem auf, wenn auf das im Konstruktor befindliche CI-Superobjekt verwiesen wird, da das Objekt erst existiert, nachdem die Klasse vollständig instanziiert wurde