Hello,
GLOBAL funktionier bei PHP "von innen nach außen". Da Variablen alle implizit deklariert werden, und eine Funktion eine Namensraumabgrenzung betreibt, muss man innerhalb der Funktion die Variable als Global deklarieren. Dann weiß der parser, dass er ´diese Variable nicht neu anzulegen hat, sondern aus der der Funtion übergeordneten Schicht entnimmt.
Um sicherzugehen, dass es bei manchen älteren PHP-Versionen da keinen Fehler gibt, sollte man die Variable vor der Funktionsnutzung außerhalb der Funktion initialisieren.
Im übrigen sollte man überhaupt nicht mit Globals arbeiten, sondern bestenfalls mit den Auto_superglobalen Arrays $_POST, $_GET, $_COOKIE, S_SERVER und dem Superglobalen Array $_SESSION
Darüberhinaus immer alle Daten als Aufrufparameter an die Funktion übergeben. Dann klappts auch mit der Mehrfachnutzung von Funktionen.
Harzliche Grüße aus http://www.annerschbarrich.de
Tom
Fortschritt entsteht nur durch die Auseinandersetzung der Kreativen
Nur selber lernen macht schlau