Die Funktion isset() überprüft, ob eine Variable oder ein Array existent ist.
Diese Funktion liefert true zurück, wenn die Variable oder das Array existent ist, sonst false. Es gibt eine Besonderheit bei Formularen. Wird ein Formular per Image gesendet und Sie möchten dieses überprüfen, so müssen Sie bei der Abfrage ein "_x" anhängen (isset($tag_x)), da bei einem Formular-Tag die X- und Y-Koordinaten der Mausposition mitgegeben werden. Wird eine Variable oder ein Array mit unset() wieder freigegeben, so ist sie bzw. es als nicht existent anzusehen.
<?php
Eine Variable setzen, damit wir keinen Fehler erzeugen.
if (!isset($test)) $test = '';
$test .= 'Das ist ein Test.';
echo $test;
Die Ausgabe währe: Das ist ein Test
Würden wir mit isset() nicht prüfen, ob $test gesetzt ist, würden wir einen Fehler erzeugen der so aussieht:
Notice: Undefined variable: test
Wenn wir $_POST oder $_GET Variablen mit isset() prüfen möchten, müsste das Beispiel so aussehen:
Beispiel für $_POST
if (!isset($_POST['test'])) $_POST['test'] = '';
echo $_POST['test'];
Beispiel für $_GET
if (!isset($_GET['test'])) $_GET['test'] = '';
echo $_GET['test'];
Häufig kommt es vor, das wir mit $_GET
eine ID Nummer übergeben, da könnten wir
unsere IF Anweisung sinvoll erweitern.
Hier ein Beispiel:
if (!isset($_GET['id'])) {
Wenn $_GET['id'] nicht übergeben wurde, arbeiten wir mit 0 weiter und fangen dies ab!
$_GET['id'] = '0';
} else {
/**
* Wenn $_GET['id'] übergeben wurde,
* prüfen wir, ob dies eine Zahl ist.
*
* Sollte $_GET['id'] zb: a1 sein,
* wird die Variable mit 0 befüllt.
*/
$_GET['id'] = sprintf("%d", $_GET['id']);
}
echo $_GET['id'];
?>