PHP keywords – Parte 1

26 02 2007

PHP, assim como outras linguagens, possui diversas palavras-chave e construtores de linguage, muitos deles bastante utilizados e outros talvez até desconhecidos.

Vejamos então uma lista com estas palavras-chave e construtores e para que servem ou como utiliza-los

  • echo

Diferentemente do que muitos pensam, “echo” não é uma função, mas sim um construtor da linguagem. É utilizado para exibir uma ou mais strings:

<?php
echo ‘Ola ‘, ‘mundo ‘;

echo (“cruel\n”);
?>

  • print

Da mesma forma que “echo” não é uma função, “print” também não é. As principais diferenças entre “echo” e “print” são:
– “print” retorna um valor (sempre 1) e “echo” não retorna
– “echo” pode exibir mais do que uma string, e “print” não (echo ‘Ola ‘, ‘mundo ‘;)

<?php

    print ‘Ola ‘;
    print ‘mundo ‘;
    print (“cruel\n”);

    // note que
    // print ‘Ola ‘, ‘mundo ‘;
    // nao funciona
?>

  • die e exit

“die” é um alias (apelido) para exit. “exit” serve para finalizar um script:

<?php
    if(!file_exists(‘/etc/blablabla’))
        exit(2); // finaliza o script, com status = 2 (file not found)

    echo “Eu nao serei exibido”;
?>

$ php exit.php
$ echo $?
2
$

<?php

    if(!file_exists(‘/etc/blablabla’))

        exit(“Arquivo nao encontrado\n”); // finaliza o script exibindo uma mensagem

    echo “Eu nao serei exibido”;

?>

$ php exit.php
Arquivo nao encontrado

$ echo $?
2
$

“exit” também não é uma função.

  • if, else, elseif e endif

“if”, “else” e “elseif” não precisam de uma explicação, pois são realmente simples e bastante utilizados. “endif”, ao contrário, não é muito. É utilizado na sintaxe altenativa de “if”:

<?php
    if ( 1 == 2 ):
        echo “Fim do mundo\n”;

        exit(42);
    else :
        echo “Tudo certo\n”;
    endif;

?>

  • for e endfor

Assim como o “if”, “for” é bastante utilizado e não necessita uma explicação e também possui uma sintaxe alternativa:

<?php
    for ( $cont = 0; $cont != 10; $cont++ ):

        echo $cont;
        echo “\n”;
    endfor;

?>

  • while e endwhile

Assim como o “if” e o “for”, o “while” também é bastante comum e possui uma sintaxe alternativa:

<?php
    $cont = 0;

    while($cont++ < 10):
        echo $cont;
        echo “\n”;

    endwhile;
?>

$ php while.php
1
2
3
4

5
6
7
8
9
10

  • foreach, as e endforeach

“foreach” é utilizado para fazer passar por todos os ítens de um array. E, como os citados anteriormente, também possui a sintaxe alternativa:

<?php
    $sos = array(‘windows’, ‘fbsd’, ‘plan9′, ‘linux’);

    foreach ( $sos as $so ):
        echo $so;
        echo “\n”;

    endforeach;
?>

$ php foreach.php
windows
fbsd
plan9
linux

É possível obter também o índice do ítem corrente do array sendo iterado:

<?php
    $paises = array(‘Brasil’, ‘Argentina’, ‘Paraguai’);

    // utilizando a forma mais comum de foreach

    foreach ( $paises as $indice => $pais ) {
        echo $indice;

        echo ‘ – ‘;
        echo $pais;
        echo “\n”;

    }
?>

$ php foreachi.php
0 – Brasil
1 – Argentina
2 – Paraguai

  • switch, case, default e endswitch

“switch”, “case” e “default” tem o uso bastente difundido também. Já endswitch não costuma ser muito utilizado:

<?php
    $cidade = ‘Curitiba’;

    switch ( $cidade ):

        case ‘Sao Paulo’:
            echo “Nao foi uma boa escolha\n”;

        break;

        case ‘Rio de Janeiro’:
            echo “Nao possui amor a vida ?\n”;

        break;

        case ‘Curitiba’:
            echo “Boa escolha\n”;

        break;

        // opcao padrao, caso nao se encaixe em nenhuma das anteriores
        default:
            echo “Nenhuma da opcoes\n”;

        break;

    endswitch;
?>

$ php switch.php
Boa escolha

  • do-while

“do-while” é bem menos utilizado do que o “while”. A diferença entre ambos é que no “do-while” a expressão condional é executada após cada iteração, e não antes:

<?php

    $cont = 1;
    do {
        echo $cont;

        echo “\n”;

    } while($cont++ < 10);
?>

$ php dowhile.php
1
2

3
4
5
6
7
8

9
10

  • break

“break” é utilizado para finalizar a execução de um bloco “switch”, “for”, “while”, “do-while” ou “foreach”:

<?php
    $cidade = ‘Curitiba’;

    switch ( $cidade ) {

        case ‘Curitiba’:
            echo “Boa escolha\n”;

        case ‘Curitiba’:

            echo “Curitiba novamente\n”;
        break;

        case ‘Sao paulo’:

            echo “Nao tao boa escolha\n”;
        break;

        case ‘Curitiba’:

            echo “Terceira vez Curitiba\n”;
        break;

    }
?>

$ php break.php
Boa escolha
Curitiba novamente

“break” pode ser utilizado também com um argumento númerico, que indica o nível do bloco que deve ser interrompido:

<?php

    for ( $x = 0; $x < 10; $x++ ) {

        for ( $y = 0; $y < 10; $y++ ) {

            echo “$x * $y = “;

            echo $x * $y;

            echo “\n”;

            if ( $x == 2 ) break 2;

        }
    }

?>

$ php breakn.php
0 * 0 = 0
0 * 1 = 0

0 * 2 = 0
0 * 3 = 0
0 * 4 = 0
0 * 5 = 0

0 * 6 = 0
0 * 7 = 0
0 * 8 = 0
0 * 9 = 0
1 * 0 = 0

1 * 1 = 1
1 * 2 = 2
1 * 3 = 3
1 * 4 = 4

1 * 5 = 5
1 * 6 = 6
1 * 7 = 7
1 * 8 = 8
1 * 9 = 9

2 * 0 = 0

  • continue

“continue” é utilizado no interior de loops, para parar a execução, retornar para o começo do bloco da estrutura de comandos e começar uma nova iteração.

<?php
    // exibindo numeros impares
    for ( $cont = 1; $cont < 10; $cont++ ) {

        // resto da divisao de $cont por 2. Se for = 0, o numero e’ par,
        // deve retornar para o inicio do loop
        if ( $cont % 2 == 0 ) continue;

        echo $cont.“\n”;
    }
?>

$ php continue.php

1
3
5
7
9

Continue pode ser utilizado também em “foreach”, “while”, “do” e “switch”. Vale observar que “switch” é considerado uma strutura de looping para o “continue”.
E assim como o break pode ser utilizado com um argumento número para indicar o nível que do bloco que deve ser interrompido, o continue também pode utilizar este argumento, tendo o funcionamento análogo:

<?php

    for ( $cont = 1; $cont < 5; $cont++ ) {

        for ( $cont2 = 1; $cont2 < 10; $cont2++ ) {

            if ( $cont2 == 3 ) continue 2;

            echo “$cont * $cont2 = “;

            echo $cont * $cont2;
            echo “\n”;

        }

    }
?>

$ php continuei.php
1 * 1 = 1
1 * 2 = 2

2 * 1 = 2
2 * 2 = 4

3 * 1 = 3
3 * 2 = 6
4 * 1 = 4
4 * 2 = 8

Nesta primeira parte ficamos nisso.

Anúncios

Ações

Information

One response

13 07 2007
Pinóquio

Gostei muito, muito didático e bastante útil para o entendimento humano.
;]

Deixe um comentário

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s




%d blogueiros gostam disto: