Determina la prima e l'ultima iterazione in un ciclo Foreach in PHP

  1. Sintassi PHP foreach()
  2. Ottieni il primo e l’ultimo elemento in un ciclo foreach() in PHP

Il ciclo PHP foreach() viene utilizzato per scorrere un blocco di codice per ogni elemento dell’array. In questo articolo, scopriremo come usare il ciclo foreach() e come ottenere il primo e l’ultimo elemento di un array.

Sintassi PHP foreach()

Il ciclo foreach() viene utilizzato principalmente per iterare ogni valore di un array.

Esempio di ciclo foreach():

for($array as $key => $value){
    // Add code here
}

I significati dei parametri foreach():

  • $array - Deve essere un array valido da utilizzare in un ciclo; Se l’array passato non è valido o è una stringa, restituisce un errore del tipo: (Avviso: argomento non valido fornito per foreach()).
  • $key - È la key dell’elemento ad ogni iterazione.
  • $value - È il valore dell’elemento in ogni iterazione.

Ottieni il primo e l’ultimo elemento in un ciclo foreach() in PHP

Esistono diversi approcci per ottenere il primo e l’ultimo elemento in un ciclo utilizzando PHP e varia a seconda delle versioni.

Questi sono, usando counter (funziona per tutte le versioni), usando array_key_first() e array_key_last() per PHP 7.3.

Usa Counter nel ciclo foreach di PHP

Aggiunta di una variabile intera e posizionamento del contatore in fondo al ciclo foreach().

Esempio:

$array  = array("dog", "rabbit", "horse", "rat", "cat");
$x = 1;
$length = count($array);

foreach($array as $animal){
    if($x === 1){
        //first item
        echo $animal; // output: dog
    }else if($x === $length){
        echo $animal; // output: cat
    }
    $x++;
}

Nell’esempio precedente, l’lista degli animali è memorizzato come un array.

Quindi imposta $x come 1 per avviare il contatore.

Usa count() per determinare la lunghezza totale di un array. L’iterazione del contatore è stata posta in fondo al ciclo foreach() - $x++; per eseguire la condizione per ottenere il primo elemento.

Per ottenere l’ultimo elemento, controlla se $x è uguale alla lunghezza totale dell’array. Se true, ottiene l’ultimo elemento.

Usa array_key_first() e array_key_last() in PHP Loop

Con l’ultima versione di PHP, ottenere il primo e l’ultimo elemento in un array non può mai essere più efficiente.

Esempio:

$array  = array("dog", "rabbit", "horse", "rat", "cat");
foreach($array as $index => $animal) {
    if ($index === array_key_first($array))
        echo $animal; // output: dog

    if ($index === array_key_last($array))
        echo $animal; // output: cat
}

Nell’esempio sopra, array_key_first() ottiene la chiave del primo elemento dell’array, in questo caso è 0.

Quindi array_key_last() ottiene l’ultima chiave dell’array, in questo caso, 5.

Ispezionando la matrice, l’elemento che si trova nel tasto 0 è il dog che è il primo e nel tasto, è il cat che è l’ultimo elemento.

Articolo correlato - PHP Loop

  • Controlla ogni valore della chiave del loop in PHP
  • Articolo correlato - PHP Array

  • Elimina un elemento da un array in PHP