Thomas Luethi: Sessions unter function

Beitrag lesen

Hallo,

Kleine Verständnisfrage: Wenn ich z.B. am Anfang eines Scripts session_register("versuch"); sage, kann ich dann auch auf $versuch zugreifen, wenn diese innerhalb eines function-Bereiches benötigt wird, der mit dem include-Befehl eingegliedert wird?

Du solltest _immer_ mit $_SESSION['versuch'] auf die Variable zugreifen.
Das geht ueberall, auch in Funktionen, ohne weiteres, da $_SESSION eine
sogenannt "superglobale" Variable ist.
http://www.php.net/manual/en/reserved.variables.php

Uebrige Variablen von ausserhalb einer Funktion kannst Du auch
in der Funktion drin verwenden, wenn Du sie am Anfang der
Funktion mit dem Befehl "global" verfuegbar machst:

$test="blabla";

function bla()
 {
  echo $test; // Keine Ausgabe, da die Variable nicht definiert ist
  global $test;
  echo $test; // Ausgabe: blabla
 }

Alternativ koenntest Du in dem Fall $_GLOBAL['test'] verwenden.

Lies mal im Manual den Abschnitt "Geltungsbereich von Variablen":
http://www.php.net/manual/de/language.variables.scope.php

Gruesse,

Thomas