DEV Community

João Pedro Amaral Dias
João Pedro Amaral Dias

Posted on

Não use mais switch no PHP 8

Match expression faz parte dos novos recursos do php8, com sintaxe sucinta, substitui o uso de switch no seu código.


Com switch:

$numero = 1;
$resposta = '';
switch ($numero) {
    case 0:
        $resposta = "$numero é igual a 0";
        break;
    case 1:
        $resposta = "$numero é igual a 1";
        break;
    case 2:
        $resposta = "$numero é igual a 2";
        break;
    default:
        $resposta = "$numero não é igual a 0, 1 ou 2";
}

echo $resposta;
Enter fullscreen mode Exit fullscreen mode

Com match expression:

$numero = 1;
$resposta = '';

$resposta = match($numero) {
    0 => "$numero é igual a 0",
    1 => "$numero é igual a 1",
    2 => "$numero é igual a 2",
    default => throw new \Exception("$numero não é igual a 0, 1 ou 2")
};

echo $resposta
Enter fullscreen mode Exit fullscreen mode

Match expression utiliza === na comparação.

Top comments (0)