Vai al contenuto
  • Vai al contenuto

    PHP foreach


    delta
     Share

    Recommended Posts

    • Maschio (Etero)

    Il costrutto foreach di PHP fornisce un modo per ciclare i contenuti di un array o di un oggetto. Attraverso foreach, in pratica, verrà inizializzato un ciclo che si ripeterà quanti sono gli elementi contenuti nell'array o nell'oggetto PHP.

    La sua sintassi è la seguente:

    foreach ($array as $valore) {
      
      // ... istruzioni ... 
    
    }

    oppure:

    foreach ($array as $chiave => $valore) {
      
      // ... istruzioni ... 
    
    }

    Nella prima sintassi il valore dell'elemento corrente dell'array viene trasferito alla variabile $valore. Nella seconda sintassi, invece, oltre al valore abbiamo anche la $chiave dell'elemento corrente.

    In entrambi i casi, ovviamente, il ciclo si ripeterà tante volte quanti sono gli elementi dell'array e, per ciascun passaggio, verranno eseguite le istruzioni indicate all'interno delle parentesi graffe.

    Vediamo un esempio pratico per comprendere meglio il funzionamento del costrutto foreach.

    // Definisco un array di 4 elementi
    $frutta = array('mela','pera','arancia','banana');
    
    // Ora eseguo un ciclo per scorrere gli elementi dell'array
    foreach ($frutta as $frutto) {
      echo $frutto . '<br>';  
    }

    L'esempio qui sopra è alquanto semplice: per prima cosa abbiamo definito un array di 4 elementi, ed in seguito lo abbiamo ciclato attraverso foreach al fine di stampare a video, uno sotto all'altro, il nome di ciascun elemento contenuto dell'array.

    Vediamo, di seguito, un esempio che sfrutta il secondo tipo di sintassi (quello completo dell'indicazione alla chiave degli elementi).

    // Definisco un array di 4 elementi
    $frutta = array(
      1 => 'mela',
      2 => 'pera',
      3 => 'arancia',
      4 => 'banana'
    );
    
    // Ora eseguo un ciclo per scorrere gli elementi dell'array
    foreach ($frutta as $chiave => $frutto) {
      echo $chiave . ' - ' . $frutto . '<br>';  
    }

    Per finire vediamo, di seguito, un esempio di utilizzo del costrutto foreach di PHP per ciclare un'array multidimensionale:

    // Definisco un array di 4 elementi
    $dipendenti = array(
      'dirigenti' => array('Mario Rossi','Anna Bianchi'),
      'impiegati' => array('Luca Verdi','Gianni Pietri','Roberto Lima'),
      'operai' => array('Lucia Boschi','Ottavio Fanelli','Caterina Riva')
    );
    
    // Ora eseguo un ciclo per scorrere gli elementi dell'array
    foreach ($dipendenti as $ruolo => $nomi) {
      foreach ($nomi as $nome) {
        echo $ruolo . ' - ' . $nome . '<br>';
      } 
    }

    Com'è possibile notare, per effettuare il ciclo di un'array di tipo multidimensionale abbiamo utilizzato due cicli foreach (l'array è bidimensionale e pertanto sono serviti due cicli foreach), il secondo annidiato nel primo.

    Sintassi alternativa per foreach()

    Oltre alla sintassi tradizionale vista sopra, esiste in PHP una seconda sintassi (o sintassi alternativa) di foreach. Eccola:

    foreach ($array as $valore):
      
      // ... istruzioni ... 
    
    endforeach;

    In pratica le istruzioni del ciclo sono racchiuse tra i due punti (:) e la parola endforeach.

    Link al commento
    Condividi su altri siti

     Share

    PHP foreach


    delta
     Share

    Recommended Posts

    • Maschio (Etero)

    Il costrutto foreach di PHP fornisce un modo per ciclare i contenuti di un array o di un oggetto. Attraverso foreach, in pratica, verrà inizializzato un ciclo che si ripeterà quanti sono gli elementi contenuti nell'array o nell'oggetto PHP.

    La sua sintassi è la seguente:

    foreach ($array as $valore) {
      
      // ... istruzioni ... 
    
    }

    oppure:

    foreach ($array as $chiave => $valore) {
      
      // ... istruzioni ... 
    
    }

    Nella prima sintassi il valore dell'elemento corrente dell'array viene trasferito alla variabile $valore. Nella seconda sintassi, invece, oltre al valore abbiamo anche la $chiave dell'elemento corrente.

    In entrambi i casi, ovviamente, il ciclo si ripeterà tante volte quanti sono gli elementi dell'array e, per ciascun passaggio, verranno eseguite le istruzioni indicate all'interno delle parentesi graffe.

    Vediamo un esempio pratico per comprendere meglio il funzionamento del costrutto foreach.

    // Definisco un array di 4 elementi
    $frutta = array('mela','pera','arancia','banana');
    
    // Ora eseguo un ciclo per scorrere gli elementi dell'array
    foreach ($frutta as $frutto) {
      echo $frutto . '<br>';  
    }

    L'esempio qui sopra è alquanto semplice: per prima cosa abbiamo definito un array di 4 elementi, ed in seguito lo abbiamo ciclato attraverso foreach al fine di stampare a video, uno sotto all'altro, il nome di ciascun elemento contenuto dell'array.

    Vediamo, di seguito, un esempio che sfrutta il secondo tipo di sintassi (quello completo dell'indicazione alla chiave degli elementi).

    // Definisco un array di 4 elementi
    $frutta = array(
      1 => 'mela',
      2 => 'pera',
      3 => 'arancia',
      4 => 'banana'
    );
    
    // Ora eseguo un ciclo per scorrere gli elementi dell'array
    foreach ($frutta as $chiave => $frutto) {
      echo $chiave . ' - ' . $frutto . '<br>';  
    }

    Per finire vediamo, di seguito, un esempio di utilizzo del costrutto foreach di PHP per ciclare un'array multidimensionale:

    // Definisco un array di 4 elementi
    $dipendenti = array(
      'dirigenti' => array('Mario Rossi','Anna Bianchi'),
      'impiegati' => array('Luca Verdi','Gianni Pietri','Roberto Lima'),
      'operai' => array('Lucia Boschi','Ottavio Fanelli','Caterina Riva')
    );
    
    // Ora eseguo un ciclo per scorrere gli elementi dell'array
    foreach ($dipendenti as $ruolo => $nomi) {
      foreach ($nomi as $nome) {
        echo $ruolo . ' - ' . $nome . '<br>';
      } 
    }

    Com'è possibile notare, per effettuare il ciclo di un'array di tipo multidimensionale abbiamo utilizzato due cicli foreach (l'array è bidimensionale e pertanto sono serviti due cicli foreach), il secondo annidiato nel primo.

    Sintassi alternativa per foreach()

    Oltre alla sintassi tradizionale vista sopra, esiste in PHP una seconda sintassi (o sintassi alternativa) di foreach. Eccola:

    foreach ($array as $valore):
      
      // ... istruzioni ... 
    
    endforeach;

    In pratica le istruzioni del ciclo sono racchiuse tra i due punti (:) e la parola endforeach.

    Link al commento
    Condividi su altri siti

     Share