phpbar.de logo

Mailinglisten-Archive

[php] Superglobals in Klassen

[php] Superglobals in Klassen

Niels Runge info at runge.it
Mon Okt 2 15:47:05 CEST 2006


Hallo Lutz,
>> Also, ich meinte es so: Wenn in Funktionen/Methoden auf variable
>> Variablen zugegriffen wird, dann schaut PHP intern immer nur bei den
>> lokalen Variablen. Da es aber keine lokale Variable $_POST (oder eben
>> jede Superglobale) geben kann, ist es nicht möglich. Weiß nicht wie
>> ichs besser erklären könnte :-)
>>     
>
> paßt aber leider immer noch nicht. :-( Wenn ich jetzt z.B. eine Variable 
> außerhalb einer Funktion definiere und sie mit global in die Funktion 
> reinhole, kann ich sie mit der variablen Variablenschreibweise in der 
> Funktion ausgeben. Das Phänomen, was Andreas beobachtet hat, ist 
> wirklich auf die Superglobalen beschränkt und scheint eigentlich nichts 
> mit global/lokal oder definiert/undefiniert zu tun zu haben.
>   
hmm, also ich meinte auch die ganze Zeit nur die Superglobalen ;-)
Von definiert/undefiniert habe ich eigentlich auch nie gesprochen, egal.

Also so denke ich es halt

<?php
$foo = 1;

function bar() {
    global $foo;
   
    echo $foo;

}
?>

Hier spricht man die lokale Variable $foo an, die allerdings eine 
Referenz zur globalen Variable $foo besitzt.
Und bei Superglobalen spricht man eben immer direkt die Superglobale an, 
es kann keine lokale Variable existieren mit dem Namen einer Superglobalen.

Ok, das ist meine Theorie, mehr aber auch nicht :D
Habe k.A. von den internen von PHP.

Gruß
Niels

php::bar PHP Wiki   -   Listenarchive