Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Impara Istruzione Switch-Case | Istruzioni Condizionali
Introduzione a PHP

bookIstruzione Switch-Case

L'istruzione switch è uno strumento potente in PHP che consente di eseguire un blocco di codice tra molte opzioni possibili in base al valore di un'espressione. È particolarmente utile quando si dispone di una variabile che può assumere diversi valori distinti e si desidera eseguire codice diverso a seconda di quel valore.

Sintassi

La sintassi di base di un'istruzione switch in PHP è la seguente:

switch (expression) {
    case value1:
        // Code to be executed if expression equals value1
        break;
    case value2:
        // Code to be executed if expression equals value2
        break;
    // You can have any number of case statements
    default:
        // Code to be executed if expression doesn't match any case
}
  • Expression è il valore che si desidera confrontare nei vari casi;
  • Case value: ogni case verifica se l'espressione corrisponde a questo valore;
  • La parola chiave break viene utilizzata per terminare il case corrente e uscire dall'istruzione switch. Senza break, il codice continuerà a eseguire il case successivo (fall-through);
  • Il case default viene eseguito se nessuno degli altri case corrisponde all'espressione. È opzionale ma consigliato per gestire valori imprevisti.

Vediamo un esempio più breve in cui si determina l'esito di una partita di Carta, Forbice, Sasso in base alla scelta del giocatore:

main.php

main.php

copy
1234567891011121314151617
<?php $playerChoice = "rock"; switch ($playerChoice) { case "rock": echo "You chose rock. Rock smashes scissors!"; break; case "paper": echo "You chose paper. Paper covers rock!"; break; case "scissors": echo "You chose scissors. Scissors cuts paper!"; break; default: echo "Invalid choice. Please choose rock, paper, or scissors."; } ?>

In questo esempio, poiché $playerChoice è "rock", l'output sarà "You chose rock. Rock smashes scissors!". L'istruzione switch controlla ogni case in ordine fino a trovare una corrispondenza. Una volta trovata, viene eseguito il blocco di codice corrispondente e l'istruzione break impedisce l'esecuzione dei case successivi.

Caso Default

Il case default è utile per gestire valori imprevisti. Funziona come un caso di riserva se nessuno dei case specificati corrisponde all'espressione:

main.php

main.php

copy
1234567891011121314151617
<?php $playerChoice = "lizard"; switch ($playerChoice) { case "rock": echo "You chose rock. Rock smashes scissors!"; break; case "paper": echo "You chose paper. Paper covers rock!"; break; case "scissors": echo "You chose scissors. Scissors cuts paper!"; break; default: echo "Invalid choice. Please choose rock, paper, or scissors."; } ?>

Poiché "lizard" non è una scelta valida, l'output sarà "Invalid choice. Please choose rock, paper, or scissors".

L'istruzione switch rappresenta un'alternativa più chiara e leggibile rispetto a molteplici istruzioni if-else if-else quando si confronta una singola espressione con diversi valori. È particolarmente utile per gestire più condizioni in modo compatto e comprensibile. Ricordare di utilizzare break per evitare il fall-through e di includere un caso default per gestire valori imprevisti.

Compito

Swipe to start coding

Completa gli spazi vuoti nel codice per visualizzare il messaggio appropriato in base al valore della variabile $grade utilizzando un'istruzione switch.

Soluzione

Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 3. Capitolo 4
single

single

Chieda ad AI

expand

Chieda ad AI

ChatGPT

Chieda pure quello che desidera o provi una delle domande suggerite per iniziare la nostra conversazione

Suggested prompts:

Can you show me a complete example of a switch statement in PHP?

What happens if I forget to use the break statement in a switch case?

When should I use a switch statement instead of if-else statements?

close

Awesome!

Completion rate improved to 4.35

bookIstruzione Switch-Case

Scorri per mostrare il menu

L'istruzione switch è uno strumento potente in PHP che consente di eseguire un blocco di codice tra molte opzioni possibili in base al valore di un'espressione. È particolarmente utile quando si dispone di una variabile che può assumere diversi valori distinti e si desidera eseguire codice diverso a seconda di quel valore.

Sintassi

La sintassi di base di un'istruzione switch in PHP è la seguente:

switch (expression) {
    case value1:
        // Code to be executed if expression equals value1
        break;
    case value2:
        // Code to be executed if expression equals value2
        break;
    // You can have any number of case statements
    default:
        // Code to be executed if expression doesn't match any case
}
  • Expression è il valore che si desidera confrontare nei vari casi;
  • Case value: ogni case verifica se l'espressione corrisponde a questo valore;
  • La parola chiave break viene utilizzata per terminare il case corrente e uscire dall'istruzione switch. Senza break, il codice continuerà a eseguire il case successivo (fall-through);
  • Il case default viene eseguito se nessuno degli altri case corrisponde all'espressione. È opzionale ma consigliato per gestire valori imprevisti.

Vediamo un esempio più breve in cui si determina l'esito di una partita di Carta, Forbice, Sasso in base alla scelta del giocatore:

main.php

main.php

copy
1234567891011121314151617
<?php $playerChoice = "rock"; switch ($playerChoice) { case "rock": echo "You chose rock. Rock smashes scissors!"; break; case "paper": echo "You chose paper. Paper covers rock!"; break; case "scissors": echo "You chose scissors. Scissors cuts paper!"; break; default: echo "Invalid choice. Please choose rock, paper, or scissors."; } ?>

In questo esempio, poiché $playerChoice è "rock", l'output sarà "You chose rock. Rock smashes scissors!". L'istruzione switch controlla ogni case in ordine fino a trovare una corrispondenza. Una volta trovata, viene eseguito il blocco di codice corrispondente e l'istruzione break impedisce l'esecuzione dei case successivi.

Caso Default

Il case default è utile per gestire valori imprevisti. Funziona come un caso di riserva se nessuno dei case specificati corrisponde all'espressione:

main.php

main.php

copy
1234567891011121314151617
<?php $playerChoice = "lizard"; switch ($playerChoice) { case "rock": echo "You chose rock. Rock smashes scissors!"; break; case "paper": echo "You chose paper. Paper covers rock!"; break; case "scissors": echo "You chose scissors. Scissors cuts paper!"; break; default: echo "Invalid choice. Please choose rock, paper, or scissors."; } ?>

Poiché "lizard" non è una scelta valida, l'output sarà "Invalid choice. Please choose rock, paper, or scissors".

L'istruzione switch rappresenta un'alternativa più chiara e leggibile rispetto a molteplici istruzioni if-else if-else quando si confronta una singola espressione con diversi valori. È particolarmente utile per gestire più condizioni in modo compatto e comprensibile. Ricordare di utilizzare break per evitare il fall-through e di includere un caso default per gestire valori imprevisti.

Compito

Swipe to start coding

Completa gli spazi vuoti nel codice per visualizzare il messaggio appropriato in base al valore della variabile $grade utilizzando un'istruzione switch.

Soluzione

Switch to desktopCambia al desktop per esercitarti nel mondo realeContinua da dove ti trovi utilizzando una delle opzioni seguenti
Tutto è chiaro?

Come possiamo migliorarlo?

Grazie per i tuoi commenti!

Sezione 3. Capitolo 4
single

single

some-alt