Neste post, irei falar um pouco sobre as estruturas de controle usadas para repetição e o uso delas quando embutidas no HTML.
| Exemplo 1 - Estruturas de Repetição WHILE/FOR |
|
| Comentários: |
|
Levando em consideração a instalação feita a partir do segundo post deste Blog, vamos criar uma pasta com o nome "estrutura_repeticao" dentro do diretório c:\webroot. Dentro desta pasta salvamos este primeiro exemplo, com o nome "exemplo1.php". Desta forma, o caminho completo do arquivo é "c:\webroot\estrutura_repeticao\exemplo1.php". Para acessar o arquivo através de um navegador, digite no mesmo a seguinte URL: http://localhost/estrutura_repeticao/exemplo1.php . Bem, agora vamos ao que importa saber deste exemplo. A estrutura segue as mesmas regras estabelecidades, sintaticamente falando, para a estrutura de decião IF/ELSE. Com isso, caso haja apenas um comando a ser executado, tanto o FOR, quanto o WHILE, não necessitam do uso de chaves. Caso haja mais de um comando, o uso de chaves é obrigatório. Da mesma forma que nas estruturas IF/ELSE também, pode-se fazer com que as estruturas deste exemplo sejam abertas num bloco PHP e fechados em outro. Isto permite fazer com que o bloco repita um mesmo trecho em HTML localizado entre os blocos do comando correspondente. No próximo post, estarei colocando um exercício a respeito. O comando FOR necessita, em sua estrutura, de 3 argumentos (linha 4) separados por ";". Respectivamente, estes argumentos representam a situação inicial da variável a ser testada, a condição de repetição e uma operação a ser usada para o incremento. Já o comando WHILE, em sua estrutura, necessita apenas de um argumento (linha 12). Este argumento corresponde ao segundo argumento do FOR, ou seja, corresponde à condição de repetição. Em geral, o programador deve controlar os outros dois argumentos não presentes nesta estrutura fora da estrutura WHILE. Em geral, a situação inicial da variável vem logo acima da estrutura WHILE (linha 11) e a operação de incremento vem dentro do bloco WHILE, como um dos últimos comandos (linha 15). O interessante também é saber o uso dos comandos "break" e "continue", muito utilizados dentro de estruturas de repetição. Esses comandos, inclusive, podem ser utilizados dentro de qualquer estrutura de repetição. O comando "continue", se executado, automaticamente passa o controle para a próxima repetição, sem executar qualquer trecho de código abaixo dele no laço correspondente. Já o comando "break", se executado, interrompe toda a execução e passa o controle pro código logo abaixo da estrutura que o chamou. O exemplo acima imprime na tela repetições de 0 a 9. O que acontece se tiramos os comentários das linhas 5 e 13? No post de resposta dos exercícios, iremos colocar os comentários. |
| Exemplo 2 - Estrutura de Repetição FOREACH |
| Comentários: |
Levando em consideração a instalação feita a partir do segundo post deste Blog, vamos criar uma pasta com o nome "estrutura_repeticao" dentro do diretório c:\webroot. Dentro desta pasta salvamos este exemplo, com o nome "exemplo2.php". Desta forma, o caminho completo do arquivo é "c:\webroot\estrutura_repeticao\exemplo2.php". Para acessar o arquivo através de um navegador, digite no mesmo a seguinte URL: http://localhost/estrutura_repeticao/exemplo2.php . Neste exemplo, usaremos a estrutura de repetição FOREACH. Esta estrutura é utilizada para leitura de elementos de um vetor. Como no PHP os vetores não são necessariamente ordenados, não podemos "varrê-los" com estruturas FOR ou WHILE, somente em caso de serem ordenados. O código acima mostra as duas maneiras de utilização da estrutura. A primeira realiza a iteração buscando apenas os elementos do vetor (linha 9). Já o segundo exemplo disponibiliza não só os elementos a cada laço, mas também os índices (linha 15). A estrutura FOREACH segue sintaticamente os mesmos aspectos mencionados nas estruturas de controle de exemplos anteriores. Ou seja, não obrigatoriedade de chaves com um comando e a possibilidade de se abrir a estrutura em um bloco PHP e fechá-la em outro bloco PHP, permitindo a inclusão de HTML entre estes blocos, bem como o uso de "continue" e "break". No primeiro FOREACH, há a expressão dentro do parentese utilizada para recuperação apenas do elemento: primeiro colocamos o vetor a ser iterado (repetido) seguido da palavra "as" e de uma variável, cujo nome será de nossa responsabilidade. No exemplo, colocamos "$valor". Esta variável, a cada laço, terá como valor o elemento correspondente do vetor, até que se chegue no final do vetor e todos os elementos sejam processados. No segundo FOREACH, recuperamos ainda o valor do índice. Para isso, após a palavra reservada "as", incluimos duas variáveis separadas pelo operador "=>" (linha 15). O nome de ambas é responsabilidade também do programador. A primeira representará no laço o índice e a segunda representará o valor do elemento correspondente ao índice. Desta forma, teremos uma "varredura" em todos os elementos do vetor, só que também tendo acesso ao índice do vetor. |
Existem outras estruturas de repetição e formas de execução. Para saber mais sobre estruturas de controle em PHP, acesse o assunto no manual do PHP.
Para fazer o download dos arquivos deste post, clique aqui.
No próximo post sobre PHP, aprenderemos a trabalhar com formulários HTML, pois através deles que é feita a entrada de dados no PHP. Antes haverá um post com exercícios sobre o que vimos até o momento.


0 comentários:
Postar um comentário