Gostaria de saber se preciso usar "break" na função "switch" quando "return" é usado.
function test($string)
{
switch($string)
{
case 'test1':
return 'Test 1: ' . $string;
case 'test2':
return 'Test 2: ' . $string;
}
}
Eu tentei e funciona muito bem sem "quebrar". Mas preciso saber se isso é seguro. Obrigado.
Respostas:
Sim, você pode usar em
return
vez debreak
...break
é opcional e é usado para evitar " queda " em todas as outrascase
instruções. Portanto,return
pode ser usado de maneira semelhante, comoreturn
termina a execução da função.Além disso, se todas as suas
case
declarações forem assim:E depois do
switch
demonstrativo que você acabou de terreturn $result
, usandoreturn find_result(...);
em cadacase
um tornará seu código muito mais legível.Por último, não se esqueça de adicionar o
default
caso. Se você acha que seu código nunca alcançará odefault
caso, então você pode usar aassert
função, porque você nunca pode ter certeza.fonte
Você não precisa de uma pausa, o retorno interrompe a execução da função.
(para referência: http://php.net/manual/en/function.return.php diz:
)
fonte
Não, não é necessário, porque quando a palavra-chave return for chamada, ela indicará que a função específica para a qual o switch / case foi chamado chegou ao fim.
fonte
Não, você não precisa de um
break
em umaswitch case
declaração. Nabreak
verdade, o é opcional, mas use com cuidado.fonte
Você não precisa disso, mas eu recomendo enfaticamente usá-lo em qualquer caso como uma boa prática.
fonte
Breakéapenas uma declaração de advertência usada para limitar o controle da estrutura da chave de ir para outro caso ... por exemplo se você tem três declarações de caso e valor é para o primeiro caso e você usou o caso sem qualquer estrutura de quebra então todos os seguintes casos será executado apesar da condição ser satisfeita apenas para o primeiro caso ... Return pode executar a função asme, então não será um problema se você usar return no lugar de break porque return tirará o controle da instrução switch case que é a necessidade naquele momento ...... espero que ajude ....
fonte
return devolve o controle ao método de chamada, onde as break salta para a primeira instrução após o bloco switch.
fonte