Globale Variablen/Objekte

Superglobals

$_SESSION

Contexte/Context_ids auflösen

Über die Session können context bzw. context_id wie folgt aufgelöst werden:

$_SESSION['CONTEXT']['enabling_objective']->context_id; //12

$_SESSION['CONTEXT']['12']->context; //'enabling_objective'

Das Array of Objects wird in /share/session.php erzeugt. Es enthält die folgenden Felder:

$_SESSION['CONTEXT']['institution']->id // '12' -> Primärschlüssel in DB ->context // 'institution' -> Kontext-Name ->context_id; // '12' -> Kontext ID ->path // 'institution/' -> Kontext-Pfad

$_SESSION['CONTEXT']['12']->id // '12' -> Primärschlüssel in DB ->context // 'institution' -> Kontext-Name ->context_id; // '12' -> Kontext ID ->path // 'institution/' -> Kontext-Pfad

Globals

curriculum nutzt die folgenden globalen Variabeln

  • $CFG

  • $COURSE

  • $CONTEXT

  • $DB

  • $GRADE

  • $INSTITUTION

  • $LICENSE

  • $PAGE

  • $SCHOOLTYPE

  • $TEMPLATE

  • $USER

global $CFG

Das $CFG Objekt wird inshare/config.phpglobal deklariert. In ihm sind relevante Variabeln gespeichert, wie z.B. Pfade, Datenbankzugansdaten usw.

Das folgende Beispiel zeigt die Stuktur des $CFG Objekts mit Kommentierungen

Beispiel des $CFG Objekts

global $PAGE

Das $PAGE Objekt wird in share/setup.php global deklariert.

Beispiel des $PAGE Objekts

global $USER

Das $USER Objekt wird inshare/setup.php global deklariert. Sobald sich ein User anmeldet, wird die Funktion session_reload_user aufgerufen und die Userdaten in $USER also auch in $_SESSION['USER'] gespeichert.

Das Passwort wird nicht in$USER und in der $_SESSION gespeichert.

Damit die einzelnen Werte in den Templates bequem genutzt werden können, werden diese über die Funktion assign_to_template mit dem Prefix 'my_'gesetzt. So kann z.B. der username über innerhalb der Templates über die Variable my_username genutzt werden.

Das folgende Beispiel zeigt die Stuktur des $USER Objekts mit Kommentierungen

Beispiel des $USER Objekts

Last updated