PHP Frage zu GET-abfrage

Sarius87

Banned
Registriert
Mai 2016
Beiträge
888
hallo, ich will folgendes haben :

Code:
if(isset($_GET[''])) echo $_GET[''];

also dass wenn ich example.com?2017 aufrufe ich 2017 erhalte. doch wie geht das ? so weit ich weiß muss ich bei der if-Abfrage ja ein GET angeben , also :

Code:
if(isset($_GET['get']))
 
GET-Parameter sind eine Key-Value-Map. Wenn du z.B. example.com?a=1&b=2 aufrufst, bekommst du $_GET['a'] = 1 und $_GET['b'] = 2.

Wenn du einen Key ohne Wert angibst, wie in example.com?2017, dann wird vermutlich ein Standardwert eingesetzt, etwa 1. Du bekämst dann also $_GET['2017'] = 1. (Probier aus, ob es wirklich 1 ist: var_dump($_GET['2017']); )
 
aber wie mache ich dass ich dann alles nach dem ? bekomme ?
 
Wenn du das ganze Array mit einer foreach schleife durch gehst kannst du über alle keys und values drüber gehen.

PHP:
if(isset($_GET)
{
   foreach($_GET as $key => $value){
   echo "Key: ".$key." Value: ".$value;
   }
}
 
Zuletzt bearbeitet: (code fehler)
PHP:
$var = (isset ($_GET['var']) ? $_GET['var'] : 0);


Damit stellst du schon mal sicher, das die Variable einen gültigen Wert hat. Ich habe mir vor zig Jahren mal eine Klasse gebaut, die den globalen Scope behandelt, da brauche ich selber nicht mehr mit arbeiten.
 
Warum sollte man das tun und den eigentlichen Nullwert einer Variable auf 0 initialisieren?

Null ist doch extra dafür da, um das Fehlen eines Wertes anzuzeigen.

Im späteren Kontrollfluss müsste man so statt auf isset($_GET['var']) trotzdem noch auf $var > 0 prüfen und spart sich keinen Arbeitsschritt.

In meinen Augen bietet dieses Vorgehen keinen Vorteil, sondern deutet ggf. auf Fehldesign hin.
 
Zurück
Oben