phpbar.de logo

Mailinglisten-Archive

[php] Superglobals in Klassen

[php] Superglobals in Klassen

Niels Runge info at runge.it
Mon Okt 2 16:34:21 CEST 2006


Hallo Lutz,

>> hmm, also ich meinte auch die ganze Zeit nur die Superglobalen ;-)
>> Von definiert/undefiniert habe ich eigentlich auch nie gesprochen,
>> egal.
>>     
>
> doch, hier: "Und dadurch kann man keine lokale Variable definieren die 
> den Namen einer Superglobale hat." Ich habe das vermutlich nur etwas 
> anders interpretiert, als Du es gemeint hast. :-)
>   
ok da hast Du recht, habe es anders verstanden/gemeint oder so :-)

> Auch wenn Du vielleicht das Gefühl hast, daß wir etwas aneinander 
> vorbeireden, glaube ich, daß wir eher von unterschiedlichen 
> Voraussetzungen ausgehen. $foo in Deinem obigen Beispiel ist für mich 
> keine lokale, sondern eine globale Variable in der Funktion. Darauf 
> stütze ich auch meine Argumentation. Ich habe gerade noch mal ins 
> Handbuch geguckt. Wenn ich das richtig lesen, müßte meine Auslegung 
> auch stimmen:
>
> "By declaring $a and $b global within the function, all references to 
> either variable will refer to the global version."
> -> http://de2.php.net/manual/en/language.variables.scope.php
>
> Und das ist der Punkt, weswegen ich dann meine, daß Deine Erklärung 
> leider nicht mehr ganz paßt. :-( Obwohl ich so gerne eine hätte... ;-)
>   
ok, ich würde sagen wir belassen es dabei ;-)
Ich gehe davon aus dass $foo eine eigene lokale Variable ist die zwar 
nur eine Referenz auf die globale Variable $foo ist, aber trotzdem 
eigenständig.
Wie auch immer, da folgendes ja funktioniert

    function show() {
        $transmit_method='POST';
        print_r($GLOBALS['_'.$transmit_method]);
    }

läßt es sich ja einfach umgehen.

EO[T|D] ;-)

Gruß
Niels



php::bar PHP Wiki   -   Listenarchive