Hello,
Du musst Die globale Variable als Parameter an die Funktion über geben:d.h. einfach in den function() schreiben --> function($alle_kst) und am ende der funktion wenn die variable ihren endgültigen wert hat machst ein return $alle_kst; dann müssts eigentlich gehen!
Das widerspricht sich schon von der Definition her.
Wenn ich eine globale Variable habe, dann muss ich die außerhalb der Funktion nur ganz normal initialisieren, damit si vorhanden ist. _Innerhalb_ der Funktion definiere ich sie als global, damit sie nicht im eigenen Namensbereich der Funktion neu angelegt wird. Die Global-Definition geht also "von innen nach außen".
Wenn ich eine Variable an die Funktion als Parameter übergebe, dann ist diese für alle innereren Zugriffe der Funktion erreichbar. Aber sie kann auf diese Weise keinen Rückgabewert liefern, da ja immer nur eine KOPIE der Variablen von Schicht zu Schicht _von_außen_nach_innen_ weitergegeben wird.
Die dritte Möglichkeit ist nun, dass man die Referenz der Variablen an die Funktion übergibt
$rein_raus = "der jetzige Wert";
function rueckgabe(&$rein_raus)
{
$rein_raus = "anders als vorher";
}
Wenn man diese Funktion nun aufruft, hat die Variable $rein_raus hinterher einen anderen Wert als vorher. Der Vorteil gegenüber einer globalen V. ist, dass man z.B. in einer rekursiven Funktion noch von Schicht zu Schicht entscheiden kann, _welche_ Referenz man übergibt und nicht immer dieselbe verwenden muss.
Harzliche Grüße aus http://www.annerschbarrich.de
Tom
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
Nur selber lernen macht schlau