Introdução ao PHP

Imprimir

Introdução ao PHP

Iniciando na Programação com PHP

Para poder programar com PHP precisamos de um servidor web. Então instalaremos em nosso computador o programa http://xampp.sf.net que cria um diretório c:\xampp\htdocs, onde devemos criar nossos programas em PHP.

É importante saber que atualmente o PHP deve ser a linguagem mais popular para programar para a web. Acredito que a facilidade de programar, os recursos oferecidos por ele, a documentação farta em seu site (http://php.net) e a grande aceitação da comunidade foram responsáveis pela sua popularidade.

Veremos que com o PHP temos muitos recursos para criar sites e aplicativos.

Existe uma tradição para quando estamos iniciando a programar em qualquer linguagem, que é a de criar um programa bem simples, que apenas mostre uma frase na tela, no caso “Hello World!”. Veja nosso programa que mostra na tela essa mensagem traduzida:

<?php

    print “Olá Mundo!”;

?>

Para ver como isso funciona precisamos criar um arquivo no diretório htdocs, com extensão .php e chamar este arquivo pelo navegador. Nosso diretório web é c:\xampp\htdocs

Vamos criar ola.php neste diretório, contendo:

<?php

    print "Olá Mundo!";

?>

E chamar pelo navegador assim:

http://localhost/ola.php

Então veremos a nossa frase

Olá Mundo!


Programando para Desktop com PHP

Nada nos impede de criar aplicativos que serão usados apenas de forma offline usando o nosso PHP. Podemos tranquilamente usar para este fim. Para a criação de aplicativos, após dominar o básico do PHP, eu recomendo que use o Framework CakePHP ou outro da sua escolha.

 

PHP com HTML

Vale lembrar que o PHP sempre fica do lado do servidor. Ele processa informações solicitadas pelo visitante e as devolve. Devolve tudo no formato HTML, juntamente com CSS e JavaScript, que ficam do lado do cliente.

Um código em PHP precisa iniciar com a TAG <?php e terminar com ?>. Qualquer arquivo que contenha código PHP precisa ter a extensão .php. Sendo assim, o interpretador do PHP não olhará para outros tipos de arquivos. E quando verificar arquivos .php somente processará os trechos entre <?php e ?>, o que estiver fora destas TAGs ele não olha.

O navegador interpreta todo código em HTML antes de mostrar na tela.

Separador de Instruções

Observe que ao final da linha:

print "Como vai?";

Cada instrução do PHP termina com ponto e vírgula.

Instrução – é um comando único que damos ao PHP.

Exemplo: print “Olá”;

O PHP permite escrever mais de uma instrução por linha, mas devemos evitar, por conta de que fica obscuro o código.

Comentários
Em PHP existem três formas de se escrever comentários:

// - este é comentário oriundo do C++ e para apenas uma linha

/*

Este é o comentário oriundo do C

e para

múltiplas linhas

*/

# - Este é o comentário oriundo do shell, para uma única linha e que deve ser evitado, pois está em processo de obsolescência.

Estruturas de Controle

Vejamos um pequeno trecho de código mais útil e interessante. Suponha que seu colégio tenha suas 4 notas dos 4 bimestres e precise fazer o cálculo para saber se você passou. Ele tem uma fórmula que é somar as 4 notas e dividir tudo por 4 para tirar a média. Veja:

Vamos criar um arquivo notas.php com o conteúdo abaixo ou testar diretamente no php-console, sem as tags inicial e final.

IF - ELSE

<?php

$aluno = '<b>Elias EF</b>';

$nota1 = 10;
$nota2 = 9;
$nota3 = 7;
$nota4 = 5;

$resultado = ($nota1 + $nota2 + $nota3 + $nota4) / 4;

if( $resultado >= 7 ){
    print "O aluno $aluno foi aprovado, com nota $resultado";
}else{
    print 'O aluno não passou!';
}

Variáveis

Como o nome sugere seu valor varia. Vejamos.

Uma variável tem:

nome - $aluno, que é o nome precedido de $.

valor - 'Elias EF'

tipo – string (acontece que o PHP não declara tipos de variáveis)

Tipos de Dados

O tipo de dados de uma variável será reconhecido quando o código for executado:

string, inteiro, float/double, boleano, array, objeto e resource.

Nomes de Variáveis

As variáveis podem ter seu valor alterado durante a execução do script, daí seu nome.

Atribuição

Se eu quiser guardar a primeira nota na variável $nota1, então preciso atribuir 10 para $nota1, assim:

$nota1 = 10;

Veja que usamos o sinal de igual para atribuir e terminamos com ponto e vírgula.

Posso atribuir um valor diretamente para uma variável, mas veja que também posso atribuir uma fórmula bem grande para a variável, assim:

$resultado = ($nota1 + $nota2 + $nota3 + $nota4) / 4;
Parecido com uma calculadora o PHP fará os cálculos e guardará o valor na variável $resultado.

Na próxima linha ele vai testar o valor do $resultado. (if( $resultado >= 7 ){)

Se for maior ou igual a 7 ele mostrará a primeira mensagem.

Caso contrário então mostrará a segunda mensagem. (}else{)

Vejamos mais um exemplo prático e interessante de uso do PHP

IF – ELSE IF – ELSE

if (expressao){

executado de true e encessa o teste.

}else if (expressao2){

executado se true e encessa o teste.

}else if (expressao3){

executado se true e encessa o teste.

}else if (expressaoN){

executado se true e encessa o teste.

}else{

executado se false

}

Lembrando que somente entra no próximo teste, se o anterior for falso.

<?php

$hora = 14;

if ($hora <= 12) {

    print “Está de manhã”;
 }else if ($hora > 12 && $hora < 18 ){

    print “Está de tarde”;
 }el se{

    print “Está de noite”;
}

if - else

O if testa uma expressão

Caso a expressão seja verdadeira, todo o código após o if será executado.

Caso não seja verdadeira o código após o else será executado.

if – eles if – else
O if testa uma expressão
Caso a expressão seja verdadeira, todo o código após o if será executado.

Caso a expressão seja falsa então o else if testará uma nova expressão

Caso a nova expressão seja verdadeira o código após o else if será executado
Caso a nova expressão seja falsa, o código após o else ou o novo else if será

executado

Criando Strings

Strings pequenas, com apenas uma linha podem ser mostradas com print ou echo, mas textos com várias linhas podem ser armazenados com o recurso chamado Heredoc:

Armazenando o texto numa variável

<?php
$str = <<<EOD
Exemplo de uma string
distribuída em várias linhas
utilizando a sintaxe heredoc.
EOD;

Ou simplesmente mostrando

<?php
echo <<<show

<a href="/portal/index.php">Início</a>
<h3>Edite Seus Dados</h3>
<form action="update.php" method="post">
<table width="500" border="1">
    <tr>
        <th scope="row">Nome</th>
            <td><input type="text" name="nome" value="$nome"></td>
    </tr>
    <tr>
        <th scope="row">Nascimento</th>
            <td><input type="text" name="data_nasc" value=$data_nasc></td>
    </tr>
    <tr>
        <th scope="row">E-mail</th>
            <td><input type="text" name="email" value="$email"></td>
    </tr>
</table>
</form>

show;

Mais uma estrutura interessante do PHP - Switch

switch – Este testa uma variável contra alguns valores. Parece com um bloco de if else if. Quando encontra o valor correto executa o código seguinte e sai da iteração.

<?php

$opcao = 3;

switch ($opcao) {
    case 1:
        print 1;
        break;
    case 2:
        print 2;
        break;
    case 3:
        print 3;
        break;
    case 4:
        print 4;
        break;
    case 5:
        print 5;
        break;
    default:
        print 'Nenhuma das anteriores';
        break;
}

Obs.: Caso removamos um dos comandos break o código continua no próximo case.

Laços: for, while, forwach

Estruturas que resolvem vários problemas com pouco esforço.

for

<?php

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

    print $x;
}

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

    print $x . '<br>';
}

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

    print $x;
}

Existem variações de uso do for. No caso abaixo, como não temos teste do valor, o incremento continua indefinidamente:

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

print $x;

}

Nestes casos precisamos inserir um teste no corpo do for, assim:

<?php

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

    if ($x > 10) {

        break;
    }

    print $x;
}

Continue
Este comando sai do laço e volta na próxima iteração, ou um certo número de comandos para sair do laço. Veja

 

<?php

for ($i = 0; $i < 10; ++$i) {
    if ($i < 5) {
        continue;
    }
    print "$i<br>";
}

 

Break

Interrompe o laço, entregando o processamento para a linha seguinte ao laço.

<?php
for ($x = 0; $x < 5; ++$x) {
    if ($x == 2) {
        break;
    }
    print "$x<br>";
}

Experimente.

foreach

Laço através de um array.

<?php

$arr = array(1, 2, 3, 4);
foreach ($arr as $value) {
    $value = $value * 2;
    print $value;
}
// $arr is now array(2, 4, 6, 8)
unset($value); // Limpar a variável, que armazena o valor

Colher Chave e Valor

<?php
$arr = array(1, 2, 3, 4);
foreach ($arr as $chave => $value) {
    $value = $value * 2;
    print 'Chave: ' . $chave . ' - Valor: ' . $value . '<br>';
}
unset($valor); // Limpar a variável, que armazena o valor

Existe muito mais recursos, mas me parece que já dá para perceber isso com estes exemplos mostrados.

Qualquer dúvida sobre qualquer comando do PHP vá até o site oficial em http://php.net e faça uma busca pelo comando, que verá a sintaxe e muitos exemplos de uso.

Atribuição

Atribuir um valor para uma variável é entregar um valor para ela guardar.

Exemplo

$variavel = 5;

Estamos acima dizendo que a variavel guarde o valor 5.

 

Comparação

Comparação é o que fazemos em uma expressão geralmente em if.

Exemplo

if($x==3)

Estou querendo dizer acima: se $x for igual a 3.

Veja que quando queremos atribuir usamos apenas um sinal de igualdade:

$x = 3;

Quando queremos comparar usamos dois sinais de igualdade: if($x == 3)

Usando = e == ou ===

Com = armazenamos um valor em uma variável.

Com == eu testo se uma variável é igual a um valor.