I PHP, er en matrix en datastruktur bestående af nøgleværdipar . Nøglen , også kaldet et indeks , viser, hvor i array elementet bosat. Den er værdien af elementet . For eksempel overveje redegørelsen $ x [12] = 100; " 12 " er den arrayindeks og "100" er værdien af elementet ved indeks " 12 . " I erklæring: $ x [' navn '] = " Mark " , "navn" er arrayindeks og " Mark " er værdien af elementet på dette indeks . En " uidentificeret indeks" fejl i PHP , når du forsøger at referere værdien af et array element ved hjælp af et indeks , som ikke findes i array . Trykfejl
Sommetider trykfejl forårsage arrayindeks problems.You kan skabe en løkke til at udføre en operation på hvert element i et array , og mistype den variabel, du bruger til at angive indekset. For eksempel overveje følgende kodestump , der forårsager en " uidentificeret indeks" fejl, fordi den variable blev skrevet forkert i kroppen af løkken
for ($ index = 0; . $ Index < count ( $ array) , $ index + +) {$ array [ $ idnex ] + = 55 ;}
associative array Indexes
associative array kan du bruge alfanumeriske taster for indekser. Det er vigtigt at forstå, at disse nøgler er små bogstaver , og at følgende kode vil producere et " uidentificeret indeks " fejl : Hej
$ array [ ' x '] = 5; echo $ array [ 'X' ] ;
Du kan undgå disse fejl ved at omdanne tilfælde af indekset variabel ved hjælp af " strtolower "-funktionen , som i det følgende eksempel : Hej
foreach ( $ bogstaver som $ bogstav) {echo $ array [ strtolower ( $ bogstav) ] ;}
dårlige Data
En " uidentificeret indeks " fejl kan undertiden forekomme på grund af dårlige data. For eksempel, hvis du behandler et datasæt , hvor du forventer, at alle indeksværdier at være ikke- negativ, og du støder på en negativ værdi i datasættet vil det medføre en " uidentificeret indeks" fejl. For at forhindre fejlen i at opstå , angive en betingelse for at fælde ulovlige array- indekser , før de anvendes , som i det følgende eksempel : Hej
while ( ( $ row = mysql_fetch_assoc ( $ result ))) {if ( $ row [" array_index "] <0 ) { echo " Bad arrayindeks værdien" . $ row [" array_index "] ;} else { echo $ array [ $ row [" array_index "]] ;}
Forebyggelse af Fejl i Gyldige Cases
Nogle gange har du en vifte af elementer, og du ønsker at kontrollere, om et bestemt emne , er i array . For eksempel overveje denne vifte af emner og mængden af hvert element på hånden : Hej
$ post [' slik '] = 100; $ post [' gum '] = 75; $ post [' mynte '] = 50 ; .
p Hvis du ønsker at tjekke for at se, hvis du har nogen sugetabletter , vil følgende erklæring forårsage en " uidentificeret indeks" fejl, fordi der ikke er " sugetabletter " element i array
echo $ post [' sugetabletter ];
at forhindre denne fejl , skal du bruge " isset "-funktionen til først kontrollere, om elementet er i array , før du kontrollere mængden værdi som i følgende kode : Hej
if ( isset ( $ post [' sugetabletter '] ) echo $ item [' sugetabletter ];