Leonardo™ 0 Denunciar post Postado Outubro 3, 2009 Olá pessoal estou com uma duvida sobre o comando exit nesse código abaixo. Quero saber se a função dele é somente encerrar o bloco do if ou se serve para mais alguma coisa... Não tenho o costume de colocar essa expressão nos meus scripts e por isso fiquei curioso rsrs... É uma boa pratica de programação ou uma má pratica? Posso omitir esse termo sem problemas? if (!ereg("^([A-Z,a-z,0-9,_,-]){4,}", $variavel)){ header("Location: link_pagina.php"); exit; } Compartilhar este post Link para o post Compartilhar em outros sites
João Batista Neto 448 Denunciar post Postado Outubro 3, 2009 Olá pessoal estou com uma duvida sobre o comando exit... Quero saber se a função dele é somente encerrar o bloco do if ou se serve para mais alguma coisa... A função exit encerra a execução do seu código como um todo, não importa se exista mais alguma instrução logo abaixo ele simplesmente encerrará a execução: echo 'Isso é executado'; exit(); echo 'Isso não'; http://br.php.net/ma...nction.exit.php Compartilhar este post Link para o post Compartilhar em outros sites
lucaswxp 22 Denunciar post Postado Outubro 3, 2009 Não, o IF e terminado quando encontrado o seu } O exit ali terminará a execução do script. Isso tem como utilidade impedir que o usuario veja coisas que não deve. Você pode colocar algo abaixo do exit que não acontecerá nada, pois a execução acabou ali, no momento em que inseriu o exit. Mas ai você pergunta: Mas eu ja estou utilizando o header (location), não vai impedir que ele veja o que estiver abaixo? R: Depende, se ele utilizar um navegador como o Mozilla, Explorer, Opera dará certo. Mas e se ele utilizar o netcat por exemplo? O header não funcionará e a execução continuará normalmente =D Por isso e sempre bom deixar o exit ali ;D Compartilhar este post Link para o post Compartilhar em outros sites
Leonardo™ 0 Denunciar post Postado Outubro 3, 2009 Quando aparece alguma coisa nova sempre fico com alguma duvida... Muito obrigado pela ajuda! Compartilhar este post Link para o post Compartilhar em outros sites
Leonardo™ 0 Denunciar post Postado Outubro 3, 2009 Nossa nem sabia essa história do header com o netcat :blink: Vlw a dica! Mais se no caso eu usar um echo "<META HTTP-EQUIV=REFRESH CONTENT = '0;URL=index.php?page=nome'>"; No netcat isso funciona sem o precisar usar o exit? Compartilhar este post Link para o post Compartilhar em outros sites
hinom 5 Denunciar post Postado Outubro 4, 2009 Leornardo, essa pergunta demonstra que você não entendeu. exit() é uma função que interrompe a execução do script server-side. não é utilizado somente para esse caso onde é preciso fazer redirecionamento. é utilizado para os casos onde deseja interromper um script. quanto à sua pergunta referente à METATAG HTML, cai na mesma questão de compatibilidade. se porventura o código não for intrepretado pelo cliente, o script seguirá em execução. portanto, por segurança, interrompa o script server side logo após a instrução. Compartilhar este post Link para o post Compartilhar em outros sites
Leonardo™ 0 Denunciar post Postado Outubro 6, 2009 Hinom eu entendi sim, eu escrevi errado nessa parte... No netcat isso funciona sem precisar usar o exit? Queria dizer No netcat isso funciona sem precisar usar o header? Vlw pela ajuda. Abraço! Compartilhar este post Link para o post Compartilhar em outros sites
hinom 5 Denunciar post Postado Outubro 6, 2009 então tá então.. resolvido ? Compartilhar este post Link para o post Compartilhar em outros sites
Leonardo™ 0 Denunciar post Postado Outubro 7, 2009 sim... sim... http://forum.imasters.com.br/public/style_emoticons/default/joia.gif Compartilhar este post Link para o post Compartilhar em outros sites