Ir ao conteúdo
  • Comunicados

    • Gabriel Torres

      Seja um moderador do Clube do Hardware!   12-02-2016

      Prezados membros do Clube do Hardware, Está aberto o processo de seleção de novos moderadores para diversos setores ou áreas do Clube do Hardware. Os requisitos são:   Pelo menos 500 posts e um ano de cadastro; Boa frequência de participação; Ser respeitoso, cordial e educado com os demais membros; Ter bom nível de português; Ter razoável conhecimento da área em que pretende atuar; Saber trabalhar em equipe (com os moderadores, coordenadores e administradores).   Os interessados deverão enviar uma mensagem privada para o usuário @Equipe Clube do Hardware com o título "Candidato a moderador". A mensagem deverá conter respostas às perguntas abaixo:   Qual o seu nome completo? Qual sua data de nascimento? Qual sua formação/profissão? Já atuou como moderador em algo outro fórum, se sim, qual? De forma sucinta, explique o porquê de querer ser moderador do fórum e conte-nos um pouco sobre você.   OBS: Não se trata de função remunerada. Todos que fazem parte do staff são voluntários.
    • DiF

      Poste seus códigos corretamente!   21-05-2016

      Prezados membros do Fórum do Clube do Hardware, O Fórum oferece um recurso chamado CODE, onde o ícone no painel do editor é  <>     O uso deste recurso é  imprescindível para uma melhor leitura, manter a organização, diferenciar de texto comum e principalmente evitar que os compiladores e IDEs acusem erro ao colar um código copiado daqui. Portanto convido-lhes para ler as instruções de como usar este recurso CODE neste tópico:  
Entre para seguir isso  
DanyelNak

[Resolvido] Case - php

Recommended Posts

Boa Tarde,

quando eu faco mais que um CASE eu tenho que fechar todos?

Por exemplo:


case "a":
case "b":

"código"

break;

só preciso dar um break, ou tenho que dar os dois break?

Valewww

Compartilhar este post


Link para o post
Compartilhar em outros sites

você precisa seguir a estrutura certa do switch case.

exemplo:

testaCase.php


<?php

$opcao $_POST["radio"]

switch($opcao){

case "a": echo "escolheu a opção A";
break;
case "b": echo "escolheu a opção B";
break;
case "c": echo "escolheu a opção C":
break;
default: echo "nenhuma das alternativas foram escolhidas";

}

?>


<form action="testaCase.php" method="post">
<ul>
<li><input type="radio" name="radio" value="a">A</li>
<li><input type="radio" name="radio" value="b">B</li>
<li><input type="radio" name="radio" value="c">C</li>
<li><input type="radio" name="radio" value="d">D</li>
</ul>
<input type="submit" value="testar Switch case"/>
</form


Nao levei em conta a estilizaçao com css nesse formulario.

Editado por dif

Compartilhar este post


Link para o post
Compartilhar em outros sites

O break não é necessariamente obrigatório.. e sim, você pode deixar linhas em branco conforme seu exemplo acima. Não precisa colocar break em todos..

A existência do break está relacionada a forma que o switch case trata a condição.. pois ele só trata a condição uma vez e então ele executará todos os códigos a partir do momento em que um case passar na condição.. mas não executará a condição novamente (ignorando os outros cases). Por isso é utilizado o break..

Isso pode ser lido na própria documentação do PHP:

http://php.net/manual/en/control-structures.switch.php (inglês)

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ok, muito obrigado pelas respostas,

Então eu só peguei a parte dos case, porque é o que eu precisava para dar o exemplo,

então eu posso usar do jeito que usei para fechar os meus Cases? usando apenas um break?

Compartilhar este post


Link para o post
Compartilhar em outros sites

bem.. segundo o post do lucas.. sim .. mas pelo que eu aprendi na faculdade.. a clausula break serve para parar a execuçao... então se você tem varios cases e neles so pode haver uma execuçao em especifico.. o break seriviria para isso.

a impressao que tenho é que enquanto você nao declara um break.. ele vai executando o case "a".. o case "b".. e aí por diante ate encontrar um break e parar.

no caso do seu exemplo e pelo site que lucas postou.. serviria caso você queria que eles façam o mesmo codigo antes de parar

o case é equivalente ao bloco de if - else , else if.. por exemplo:


if (variavel == "a" ){
faz alguma coisa

}else if(variavel == "b"){
faz outra cois diferente
}

traduzindo isso.. pra ifs no seu exemplo o que me dá impressao é que seria isso:


if((variavel == "a") && (variavel == "b")){
faz alguma coisa
}

posso ta totalmente errado.. mas é essa a impressao que me dá. da uma olhada no link que o lucas postou.. é do proprio manual..

abraço

Editado por dif

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sim.. a ideia é essa mesmo: Após algum case passar na condição, todos os códigos (dos outros cases - mesmo que não passem a condição) serão executados.. isso porque a condição só é verificada uma vez.

Então se você não quiser executar todos os códigos é necessário parar o case com um break sim. E sim, você pode (e deve - na maioria dos casos) fechar seu case com break!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Belezaaa, já dei uma lida no link que o Lucas postou!!

valeu mesmo pessoal!!!

abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

Caso o autor do tópico necessite, o mesmo será reaberto, para isso deverá entrar em contato com a moderação solicitando o desbloqueio.

Compartilhar este post


Link para o post
Compartilhar em outros sites
Visitante
Este tópico está impedido de receber novos posts.
Entre para seguir isso  





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×