English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

Tutorial Básico PHP

Tutorial Avançado PHP

PHP & MySQL

Manual de Referência PHP

Instrução PHP Switch…Case

Neste tutorial, você aprenderá a usar switch-A instrução case é usada para testar ou avaliar expressões com diferentes valores no PHP.

PHP If…Else vs Switch…Case

switch-A instrução case é if-elseif-Substituto para a instrução else, que realiza operações quase idênticas. switch-A instrução case testa uma série de valores na variável até encontrar um correspondente, então executa o bloco de código correspondente.

switch(n){
    case label1:
        // O código a ser executado, quando n = label1
        break;
    case label2:
        // O código a ser executado, quando n = label2
        break;
    ...
    default:
        // O código a ser executado, quando n não coincide com todos os rótulos
}

Veja o seguinte exemplo, onde o exemplo mostra uma mensagem diferente todos os dias.

<?php
$today = date("D");
switch($today){
    case "Mon":
        echo "Hoje é segunda-feira. Limpe sua casa.";
        break;
    case "Tue":
        echo "Hoje é segunda-feira. Compre alguns alimentos.";
        break;
    case "Wed":
        echo "Hoje é terça-feira. Vá ao médico.";
        break;
    case "Thu":
        echo "Hoje é quarta-feira. Repare seu carro.";
        break;
    case "Fri":
        echo "Hoje é sexta-feira. Vamos fazer uma festa tonight.";
        break;
    case "Sat":
        echo "Hoje é sábado. É hora de ver um filme.";
        break;
    case "Sun":
        echo "Hoje é domingo. Descanse um pouco.";
        break;
    default:
        echo "Não há informações disponíveis hoje.";
        break;
}
?>
Teste e veja‹/›

switch-instrução case em comparação com if-elseif-A diferença entre a instrução else e a instrução switch está em um aspecto importante. A instrução switch executa linha por linha (ou seja, instrução por instrução), e assim que o PHP encontrar uma expressão de condição case que for verdadeira, ele não apenas executará o código correspondente ao case, mas também executará todos os casos subsequentes até o final da instrução. Isso ocorre automaticamente ao sair do bloco switch.

Para evitar esse problema, adicione uma instrução break no final de cada bloco case. A instrução break informa ao PHP que, assim que for executado o código relacionado ao primeiro case verdadeiro, ele deve sair do switch.-bloco de instruções case.