×
Vytvárame riešenia

Error: [8]: Undefined index: keyName (PHP)

15.12.2012, Matej LednárKategória: PHP
Pri práci s poľom môže programátor naraziť na chybové hlásenie Error: [8]: Undefined index: ukončené celým textom. Táto chyba vznikne, ak je v rámci asociatívneho poľa volaný index (key), ktorý nebol ešte definovaný. Reťazec na konci chybového hlásenia definuje kľúč, ktorý chybu vyvolal.


Príklad: Situácia, kedy vznikne Error: [8]: Undefined index: five.
1
2
3
4
$my_array = array("one" => 1, "two" => 2, "three" => 3, "four" => 4);
$my_array["six"] = 6;
echo $my_array["one"] . "<br>";
echo $my_array["five"] . "<br>";
V prvom riadku je vytvorené asociatívne pole so štyrmi prvkami typu key => value s pozíciami one, two, three a four. V druhom riadku je pridaný index (key) s názvom six, do ktorého je zapísaná hodnota 6. Index five nebol definovaný, a preto zápis v štvrtom riadku echo $my_array["five"] . "<br>"; vyvolá chybové hlásenie Error: [8]: Undefined index: five.
Príklad: Odstránenie hlásenia Error: [8]: Undefined index: five.
1
2
3
4
5
$my_array = array("one" => 1, "two" => 2, "three" => 3, "four" => 4);
$my_array["five"] = 5;
$my_array["six"] = 6;
echo $my_array["one"] . "<br>";
echo $my_array["five"] . "<br>";
Pre odstránenie hlásenia Error: [8]: Undefined index: five je potrebné definovať index five a priradiť mu hodnotu. To je demonštrované v druhom príklade na riadku číslo 2 zápisom $my_array["five"] = 5;. Teraz je už príklad bez chýb.

Záver

Pri práci s poľom, najmä ak sa pridávajú prvky poľa dodatočne, je potrebné dávať pozor, či sa volá existujúci index (key). V opačnom prípade môžu vzniknúť chybové hlásenia. Vznik chybového hlásenia Error: [8]: Undefined index: je oveľa viac pravdepodobnejší ako hlásenie Error: [8]: Undefined offset:, keďže autor spraví skôr preklep v texte indexu ako keby zadal nesprávne číslo.
PHPPHPerror
Žiadna časť tohto článku nesmie byť reprodukovaná bez uvedenia autora a URL na túto stránku.
Viac informácií nájdete v sekcii O projekte.

Komentáre

Článok neobsahuje zatiaľ žiadne komentáre.

Pridať komentár

Meno (povinné)
Web
Správa (povinné)
Napíš výsledok: 6+3-9  
Odoslať
Od najnovších