Che cos'è un errore di indice non definito in PHP e come risolverlo?

Che Cos E Un Errore Di Indice Non Definito In Php E Come Risolverlo



Quando si lavora con PHP, è comune incontrare un ' Indice non definito ” errore. Questo errore si verifica quando si tenta di accedere a un elemento oa una variabile dell'array utilizzando un indice che non esiste, con risultati imprevisti o un arresto anomalo del programma.

In questo articolo, spiegheremo in dettaglio cos'è un ' indice non definito L'errore è, le possibili ragioni e come risolverlo.







Errore indice non definito in PHP

UN ' Indice non definito ” come già accennato è un errore che si verifica quando un utente cerca di accedere a un elemento o variabile in un array utilizzando un indice che non è definito in un codice.





Motivi dell'errore di indice non definito in PHP

Ci sono diverse possibili ragioni per questo errore:





  • Nome indice errato
  • Accesso a un indice inesistente
  • Valore indice non impostato
  • La chiave dell'array non esiste

Come correggere l'errore di indice non definito in PHP

Per correggere questo errore in PHP, gli utenti possono utilizzare i seguenti tre metodi:

1: funzione isset()

IL è impostato() function è una funzione integrata in PHP che consente di verificare l'esistenza di una variabile o di un indice in un array. Ritorna VERO se esiste una variabile o un indice in un array e false in un altro caso. Se vuoi correggere il errore di indice non definito in PHP è possibile utilizzare questa funzione considerando il seguente codice come esempio che controlla la variabile che esiste in un programma.





$myarray = vettore ( 'indice1' => 'valore1' , 'indice2' => 'valore2' , 'indice3' => 'valore3' ) ;

Se ( è impostato ( $myarray [ 'indice' ] ) ) {

eco $myarray [ 'indice' ] ;

} altro {

eco 'Indice non trovato nell'array' ;

}

?>

Il codice precedente utilizza il è impostato() funzione per verificare se il ' indice ' la chiave esiste nel Matrice $myarray. In tal caso, possiamo accedere in sicurezza al suo valore utilizzando $myarray['indice'] senza generare un errore. In caso contrario, riceviamo un messaggio che indica che il file l'indice non è stato trovato nella matrice. Da quanto sopra codice la chiave di indice non è disponibile il codice produrrà il risultato ' Indice non trovato nell'array ”.

2: funzione array_key_exists()

Questa è un'altra utile funzione in PHP che ti consente di verificare la presenza di un indice in un array. Funziona in modo simile alla funzione precedente restituendo true se esiste un indice in un array. In caso contrario, restituisce l'errore di indice non trovato.

L'esempio riportato di seguito mostra il funzionamento di questa funzione in PHP.



$myarray = vettore ( 'indice1' => 'valore1' , 'indice2' => 'valore2' , 'indice3' => 'valore3' ) ;

Se ( array_key_exists ( 'indice' , $myarray ) ) {

eco $myarray [ 'indice' ] ;

} altro {

eco 'Indice non trovato nell'array' ;

}

?>

Il codice precedente utilizza il matrice_chiave_esiste() funzione per verificare se il ' indice ' la chiave esiste nel Matrice $myarray. In tal caso, possiamo accedere in sicurezza al suo valore utilizzando $myarray['indice'] senza generare un errore.

Poiché il codice sopra indice key non è disponibile il codice produrrà il risultato ' Indice non trovato nell'array ”.

3: Utilizzo dell'operatore di coalescenza nullo

IL operatore di coalescenza nullo (??) è un altro metodo utile per verificare l'esistenza di un indice in un array in quanto ti aiuterà a correggere l'errore di indice non definito nel tuo codice PHP. Considera il codice indicato di seguito per imparare a utilizzare il file operatore di coalescenza null in PHP.



$myarray = vettore ( 'indice1' => 'valore1' , 'indice2' => 'valore2' , 'indice3' => 'valore3' ) ;

eco $myarray [ 'indice' ] ?? 'Indice non trovato nell'array' ;

?>

Il codice precedente utilizza il operatore di coalescenza nullo (??) per verificare la chiave di indice che esiste nel file Matrice $myarray . In tal caso, possiamo ottenere il valore dalla console. Tuttavia, se l'indice non esiste, restituisce ' Indice non trovato nell'array ” emesso sulla console.

Conclusione

IL ' indice non definito ' è un errore comune in PHP che si verifica quando si tenta di accedere a un indice di array inesistente. Il nome dell'indice con errori di ortografia, l'indice inesistente o il valore dell'indice non impostato possono causare questo tipo di errore. Per risolverlo, si può usare il isset(), array_key_exists() o l'operatore di unione null (??). Segui le linee guida sopra indicate per conoscere questi metodi in dettaglio.