PHP - Tipi di loop

I loop in PHP vengono utilizzati per eseguire lo stesso blocco di codice un numero di volte specificato. PHP supporta i seguenti quattro tipi di loop.

  • for - scorre un blocco di codice un numero di volte specificato.

  • while - scorre un blocco di codice se e fintanto che una condizione specificata è vera.

  • do...while - esegue un ciclo attraverso un blocco di codice una volta, quindi ripete il ciclo finché una condizione speciale è vera.

  • foreach - scorre un blocco di codice per ogni elemento in un array.

Ne discuteremo continue e break parole chiave utilizzate per controllare l'esecuzione dei loop.

L'istruzione for loop

L'istruzione for viene utilizzata quando si sa quante volte si desidera eseguire un'istruzione o un blocco di istruzioni.

Sintassi

for (initialization; condition; increment){
   code to be executed;
}

L'inizializzatore viene utilizzato per impostare il valore iniziale per il contatore del numero di iterazioni del ciclo. Una variabile può essere dichiarata qui per questo scopo ed è tradizionale chiamarla $ i.

Esempio

L'esempio seguente esegue cinque iterazioni e modifica il valore assegnato di due variabili in ogni passaggio del ciclo -

<html>
   <body>
      
      <?php
         $a = 0;
         $b = 0;
         
         for( $i = 0; $i<5; $i++ ) {
            $a += 10;
            $b += 5;
         }
         
         echo ("At the end of the loop a = $a and b = $b" );
      ?>
   
   </body>
</html>

Questo produrrà il seguente risultato:

At the end of the loop a = 50 and b = 25

L'istruzione ciclo while

L'istruzione while eseguirà un blocco di codice se e fintanto che un'espressione di test è vera.

Se l'espressione di test è vera, verrà eseguito il blocco di codice. Dopo che il codice è stato eseguito, l'espressione di test verrà nuovamente valutata e il ciclo continuerà fino a quando l'espressione di test non sarà trovata falsa.

Sintassi

while (condition) {
   code to be executed;
}

Esempio

Questo esempio diminuisce il valore di una variabile a ogni iterazione del ciclo e il contatore aumenta fino a raggiungere 10 quando la valutazione è falsa e il ciclo termina.

<html>
   <body>
   
      <?php
         $i = 0;
         $num = 50;
         
         while( $i < 10) {
            $num--;
            $i++;
         }
         
         echo ("Loop stopped at i = $i and num = $num" );
      ?>
      
   </body>
</html>

Questo produrrà il seguente risultato:

Loop stopped at i = 10 and num = 40

L'istruzione ciclo do ... while

L'istruzione do ... while eseguirà un blocco di codice almeno una volta, quindi ripeterà il ciclo finché una condizione è vera.

Sintassi

do {
   code to be executed;
}
while (condition);

Esempio

Il seguente esempio incrementerà il valore di i almeno una volta e continuerà a incrementare la variabile i fintanto che ha un valore inferiore a 10 -

<html>
   <body>
   
      <?php
         $i = 0;
         $num = 0;
         
         do {
            $i++;
         }
         
         while( $i < 10 );
         echo ("Loop stopped at i = $i" );
      ?>
      
   </body>
</html>

Questo produrrà il seguente risultato:

Loop stopped at i = 10

L'istruzione del ciclo foreach

L'istruzione foreach viene utilizzata per scorrere gli array. Per ogni passaggio il valore dell'elemento dell'array corrente viene assegnato a $ value e il puntatore dell'array viene spostato di uno e nel passaggio successivo verrà elaborato l'elemento successivo.

Sintassi

foreach (array as value) {
   code to be executed;
}

Esempio

Prova il seguente esempio per elencare i valori di un array.

<html>
   <body>
   
      <?php
         $array = array( 1, 2, 3, 4, 5);
         
         foreach( $array as $value ) {
            echo "Value is $value <br />";
         }
      ?>
      
   </body>
</html>

Questo produrrà il seguente risultato:

Value is 1
Value is 2
Value is 3
Value is 4
Value is 5

La dichiarazione di rottura

Il PHP break viene utilizzata per terminare prematuramente l'esecuzione di un ciclo.

Il breakl'istruzione si trova all'interno del blocco dell'istruzione. Ti dà il pieno controllo e ogni volta che vuoi uscire dal loop puoi uscire. Dopo essere uscito da un ciclo, verrà eseguita un'istruzione immediata al ciclo.

Esempio

Nell'esempio seguente, il test della condizione diventa vero quando il valore del contatore raggiunge 3 e il ciclo termina.

<html>
   <body>
   
      <?php
         $i = 0;
         
         while( $i < 10) {
            $i++;
            if( $i == 3 )break;
         }
         echo ("Loop stopped at i = $i" );
      ?>
   
   </body>
</html>

Questo produrrà il seguente risultato:

Loop stopped at i = 3

L'istruzione continue

Il PHP continue La parola chiave viene utilizzata per arrestare l'iterazione corrente di un ciclo ma non termina il ciclo.

Proprio come il break dichiarazione il continuel'istruzione è situata all'interno del blocco di istruzioni contenente il codice che il ciclo esegue, preceduto da un test condizionale. Per l'incontro di passaggiocontinue istruzione, il resto del codice del ciclo viene saltato e inizia il passaggio successivo.

Esempio

Nell'esempio seguente il ciclo stampa il valore di array, ma per quale condizione diventa vera salta il codice e viene stampato il valore successivo.

<html>
   <body>
   
      <?php
         $array = array( 1, 2, 3, 4, 5);
         
         foreach( $array as $value ) {
            if( $value == 3 )continue;
            echo "Value is $value <br />";
         }
      ?>
   
   </body>
</html>

Questo produrrà il seguente risultato:

Value is 1
Value is 2
Value is 4
Value is 5