Ich habe viele ähnliche Fragen gelesen, sie mögen doppelt erscheinen, aber keiner fragt genau, was ich verlange, und wichtiger: Keiner hat die ANTWORT, nach der ich suche!
Es ist extrem einfach: Ich möchte nur ein $variable
an mehreren Stellen verwenden: nicht nur Ansichten und Controller, sondern auch in den routes.php
und anderen Konfigurationsdateien.
Ich möchte keine Dinge wie: Verwenden Sie die Config-Klasse, um Konfigurationsdateien zu laden; Verwenden Sie CI's get_instance
und so weiter.
Ich möchte nur ein gegebenes $variable
deklarieren (es könnte eine Konstante sein, aber ich brauche es als Variable), und verwende es absolut überall.
Tatsächlich ... würde ich gerne wissen, welche PHP-Datei im CI-Bootstrap als eine der ersten analysiert wird, also könnte ich meine globale Variable dort einführen ... aber keine Kern / System- oder inapporierte Datei , aber die "beste" geeignete Platzierung für diese einfache Anforderung.
Danke.
Es gibt eine Datei in /application/config
namens constants.php
Normalerweise lege ich alle meinen da drin mit einem Kommentar, um leicht zu sehen, wo sie sind:
%Vor% Nachdem Ihr index.php
geladen ist, lädt es die Datei /core/CodeIgniter.php
, die dann wiederum die gemeinsamen Funktionen file /core/Common.php
und dann /application/constants.php
so in die Kette der Dinge lädt, dass es die vierte Datei ist, die geladen werden soll.
Ich verwende eine "Globals" -Klasse in einer Hilfsdatei mit statischen Methoden, um alle globalen Variablen für meine App zu verwalten. Hier ist was ich habe:
Schließlich können Sie für die Verwendung von überall im Code aus die Variablen setzen:
%Vor%Und das, um es zu lesen:
%Vor%Hinweis: Der Grund, warum ich die Initialisierungsaufrufe in der Globals-Klasse verlassen habe, ist eine zukünftige Erweiterbarkeit mit Initialisierern für die Klasse, falls erforderlich. Sie können die Eigenschaften auch öffentlich machen, wenn Sie keine Kontrolle darüber haben müssen, was über die Setter / Getter eingestellt und gelesen wird.
in der Dateianwendung / conf / contants.php:
%Vor%und fügen Sie irgendeine Header-Datei oder innerhalb einer Funktion:
%Vor%Tags und Links php codeigniter global-variables global