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:
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
-
O nome das variáveis precisa começar com uma letra ou pelo símbolo de sublinhado
-
O nome de variáveis pode conter somente caracteres alfa-numéricos e sublinhado: a-z, A-Z, 0-9 e _ .
-
Não pode conter espaços. Quando várias palavras podemos usar o sublinhado para separá-las: $minha_variavel.
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.
Comments fornecido por CComment