Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   [PHP] Was ist der Sinn von $GLOBALS? (https://www.delphipraxis.net/148848-%5Bphp%5D-ist-der-sinn-von-%24globals.html)

Matze 9. Mär 2010 16:11


[PHP] Was ist der Sinn von $GLOBALS?
 
Hallo,

ich habe mir zum Spaß das PHP-Array $GLOBALS ausgeben lassen. Ich sage nur: Wahnsinn, was da alles drinnen steht.
Jedes Array, auch wenn es innerhalb der private-Abschnitte von Klassen deklariert ist, lokale Variablen etc. Das sind mehrere tausend Zeilen bei mir.

Ich dachte erst, PHP selbst arbeitet mit diesem Array, da alles sauber in diesem globalen Array aufgeschlüsselt wird. Wenn ich jedoch zu Beginn meiner Seite ein "unset($GLOBALS);" ausführe, dann funktioniert meine Seite noch, auch ohne dieses Array.

Wenn man nicht aufpasst und Passwörter nicht explizit mit "unset" löscht, landen die alle in dem Array. Ich habe zwar keine Passwörter da drinnen, aber dennoch kommt mir das Array unsicher vor.
Wozu genau ist das Array denn gut? :gruebel:

Grüße, Matze

wicht 9. Mär 2010 16:28

Re: [PHP] Was ist der Sinn von $GLOBALS?
 
Kompatibilität zu alten PHP Versionen glaube ich (es gab/gibt ja auch viele "pfusch" Scripte, die sich drauf verlassen, dass Variablen global verfügbar sind, die brauchen das dann wohl).
Ich meine, man kann dieses Verhalten abschalten (php.ini, REGISTER_GLOBALS, oder so)..

Matze 9. Mär 2010 16:31

Re: [PHP] Was ist der Sinn von $GLOBALS?
 
Ach das hat Kompatibilitätsgrunde, ok danke.
"register_globals" ist "off", aber das Array existiert dennoch.

Wenn es keine Probleme macht, das du Beginn zu löschen, dann mach ich das so. Es funktioniert auch alles, also scheint PHP das Array nicht zu vermissen.

himitsu 9. Mär 2010 16:59

Re: [PHP] Was ist der Sinn von $GLOBALS?
 
Neee, ich glaub RegisterGlobals war was anderes.

Wenn via GET oder POST Daten übergeben werden, dann gibt es doch

$_POST['myvariable'] und bei RegisterGlobals=true wurde dann auch noch $myvariable erstellt. :gruebel:

Matze 9. Mär 2010 16:59

Re: [PHP] Was ist der Sinn von $GLOBALS?
 
So hatte ich das auch in Erinnerung ja.


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:28 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz