Heim >Backend-Entwicklung >PHP-Problem >So lösen Sie einen undefinierten Index in PHP
Normalerweise werden undefinierte Indexprobleme dadurch verursacht, dass das Array diesen Wert nicht hat. Arrays werden in assoziative Arrays und Index-Arrays unterteilt. Assoziative Arrays sind Schlüssel-Wert-Indizes.
$POST['id'] meldet einen undefinierten Index, da das $POST-Array keinen Wert mit der tiefgestellten Schlüsselwert-ID enthält. (Empfohlenes Lernen: PHP-Video-Tutorial)
Lösung:
Bestimmen Sie, ob das Array einen Wert mit der tiefgestellten Schlüsselwert-ID enthält, wenn If Wenn dies nicht der Fall ist, wird eine Fehlermeldung zurückgegeben. Der einfachste Weg besteht darin, die Funktion isset zu verwenden, z. B. isset($POST['id']). falsch sein;
Die ternäre Beurteilungsmethode gibt keinen Standardwert an, wie zum Beispiel $POST['id'] = isset($POST['id'])?$POST['id']:" 1";
Diese Benachrichtigung erscheint, wenn Sie (oder PHP) versuchen, auf einen undefinierten Index eines Arrays zuzugreifen.
So beheben Sie das Problem:
Überprüfen Sie, ob der Index vorhanden ist, bevor Sie darauf zugreifen. Sie können hierfür isset() oder array_key_exists() verwenden:
//isset()$value = isset($array['my_index']) ? $array['my_index'] : ''; //array_key_exists()$value = array_key_exists('my_index', $array) ? $array['my_index'] : '';
Das Sprachkonstrukt list() generiert möglicherweise Folgendes, wenn versucht wird, auf einen nicht vorhandenen Array-Index zuzugreifen:
list($a, $b) = array(0 => 'a');//orlist($one, $two) = explode(',', 'test string');
Zwei Variablen für Zugriff auf zwei Array-Elemente, aber es gibt nur ein Array-Element am Index 0, daher wird Folgendes generiert:
Hinweis: Undefinierter Offset: 1
$_POST/ $ _GET/ $_SESSION Variable
Bei der Verwendung von $_POST treten häufig die oben genannten Überlegungen auf: $_GET oder $_SESSION.
Für Ihren $_POST, $_GET müssen Sie nur prüfen, ob der Index vorhanden ist, bevor Sie ihn verwenden. Aufgrund von $_SESSION müssen Sie sicherstellen, dass mit session_start() begonnen wird und dass der Index auch existiert.
Das obige ist der detaillierte Inhalt vonSo lösen Sie einen undefinierten Index in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!