Hypertext Preprocessor
Como? Quando? Porque?
• Surgiu em 1994 com pacotes CGI criados por Rasmus Lerdof
• 1997, primeiro pacote PHP/IF (Form Interpreter)
• Zeev Suraski, PHP3, pouco recursos de OOP
• Zeev e AnJ Gutmans, PHP4
• PHP5, modularizada, robusta
Como? Quando? Porque?
Os valores abaixo referem-‐se ao número de
resultados retornados ao se fazer uma pesquisa “na web” pelo nome das linguagens listadas:
• php: 19.590.000.000 resultados
• asp: 3.080.000.000 resultados
• java: 643.000.000 resultados
• ruby: 167.000.000 resultados
• python: 104.000.000 resultados
Data: 18/05/2011
As 10 melhores praJcas para iniciantes
1. Consulte o manual e a documentação do PHP (h:p://br.php.net/) 2. Dê atenção aos erros do PHP
3. Aprenda as práFcas DRY e KISS
1. DRY: Don’t Repeat Yourself (Não Se Repita)
a) OAOO: Once And Only Once (Uma Vez e Somente Uma Vez) 2. KISS: Keep It Simple, Stupid (Mantenha Isso Simples, Estúpido)
a) YAGNI: You Aren’t Gonna Need It (Você Não Irá Precisar Disso) 4. Organize o seu código (Indentação e espaços)
5. Organize seus arquivos
6. Sempre… SEMPRE use <?php … ?>
7. Use nomes consistentes e lógicos para variáveis, funções, métodos e classes 8. Tente antes de perguntar.
• Se você não tentar antes de perguntar nunca vai saber da sua
capacidade… Tente, mude, tente novamente, e se você conseguir vai ser muito mais saFsfatório do que tentar aprender com a resposta dos
outros.
http://blog.thiagobelem.net/php-as-10-melhores-praticas-pra-um-iniciante/
Visão Geral
Interação dos soewares
- HTML - CSS
- JavaScript
- Servidor Web - PHP
Soewares Necessários
• Servidor WWW – Apache
• Suporte a PHP
• Editor de texto
• Para as aulas:
• XAMPP
Uso do XAMPP
• Os arquivos devem ter extensão .php
• Devem ser armazenados na pasta htdocs dentro do diretório do XAMPP.
• Para acessar (executar), deve-‐se usar um browser para acessar o endereço
– hnp://localhost/nome_arquivo.php
Teste do XAMPP
• Arquivo Exemplo phpinfo().
<?php
phpinfo();
?>
Teste.php
Fundamentos do PHP
• O que vem a ser o PHP?
• O que pode ser feito com PHP?
• Quanto custa o PHP?
• Como surgiu o PHP?
• PHP x JavaScript
• PHP x ASP
O que vem a ser o PHP?
• O PHP (Hipertext Preprocessor) é uma linguagem de script.
• Desenvolvimento de páginas dinâmicas.
• Permite inserir comandos diretamente nos códigos HTML de uma página.
• O PHP oferece suporte de conexão com diversos
bancos de dados, tais como: MySql, Oracle, Sybase, Dbase, PostgreSQL etc.
• Pode ser executado em diversos sistemas
operacionais (MulJplataforma).
Quanto custa o PHP?
• O PHP é distribuído sobre GPL ( Licença
Pública Geral), ou seja você não precisa pagar
nada para usá-‐lo.
O que pode ser feito com PHP?
• Basicamente, qualquer coisa que pode ser feita por algum programa CGI pode ser feita também com PHP.
-‐ Coletar dados de um formulário.
-‐ Gerar páginas dinamicamente .
• Suporte a um grande número de bancos de dados.
• Suporte a serviços através de protocolos como IMAP, SNMP, NNTP, POP3 e, logicamente, HTTP.
• É possível abrir sockets e interagir com outros protocolos.
PHP x JavaScript
• Podem realizar tarefas similares
• Porém:
• PHP é processado no servidor.
• JavaScript é processado no cliente (pelo Browser).
PHP x ASP
• O PHP é mulJplataforma, podendo ser executado em quase todos os sistemas operacionais
• ASP somente é executado em sistemas operacionais da Microsoe.
• PHP tem uma forma mais simples de acessar Bancos de Dados.
• Com relação a velocidade, o PHP é
comprovadamente mais rápido que o ASP.
• Possui um gerenciamento de memória superior
ao do ASP.
O que são páginas estáJcas
Páginas dinâmicas
Sintaxe básica para um programa em PHP
• O código PHP fica embuJdo no próprio HTML. O interpretador
idenJfica quando um código é PHP pelas seguintes tags:
Como enviar códigos HTML dentro
de um script PHP
Variáveis
• As variáveis são voláteis.
• Só existem enquanto um script esJver sendo executado.
• Se mudar de uma página para outra elas deixam de exisJr.
• A menos que sejam transferidas para a próxima página,
ou definidas como global.
Variáveis
• Linguagem case-‐sensiCve (sensível a letras maiúsculas e minúsculas ),
• “A” (maiúsculo) diferente de “a” (minúsculo)
• Variável de nome Contador é diferente de contador .
• Em PHP todas as variáveis são obrigatoriamente iniciadas com o símbolo $ (cifrão), seguido pelo seu nome.
• Exemplos válidos : $contador, $_autor, $VALOR
• Exemplos não válidos : $5Valor, $Jtulo livro , $segundo.nome
Atribuição de valor
• Para atribuir um valor a uma variável, você deve usar o sinal de =, seguido pelo valor a ser armazenado.
• Os valores alfanuméricos (strings) a serem armazenados devem estar sempre entre aspas (“).
• Valores numéricos são armazenados sem o uso das aspas.
• Em PHP você não precisa definir uma variável para usá-‐la, como é comum em outras linguagens, basta atribuir um valor diretamente a ela, e a parJr deste instante ela será automaJcamente criada.
• Exemplos:
$Jtulo = “Programando em PHP”;
$precolivro = 129.30;
PHP com uso de variáveis
PHP com uso de variáveis
• Numéricos
– Numéricos inteiros ou absolutos e números fracionários, também conhecido como ponto flutuante.
• Alfanuméricos
– Os dados alfanuméricos, também conhecidos por strings, contêm uma cadeia de caracteres que podem ser simples letras ou palavras, até frases inteiras.
Exemplos:
• $A = 25;
• $B = -‐1234;
• $C = 78.56;
• $D = -‐9.3245;
• $E = “ Olá, como vai? “;
• $F = “ 78.999”;
Operadores AritméJcos
+ Adição
-‐ Subtração
* MulJplicação
/ Divisão
% Resto da divisão
Usando Operadores AritméJcos
Operadores de atribuição
• = atribuição simples
• += atribuição com adição
• -‐= atribuição com subtração
• *= atribuição com mulJplicação
• /= atribuição com divisão
• %= atribuição com módulo
• .= atribuição com concatenação
Usando Operadores de Atribuição
Prioridades dos Operadores
A prioridade adotada nos cálculos em PHP segue de acordo com as mesmas regras matemáJcas, ou seja, os cálculos são
executados de acordo com a seguinte ordem:
Parênteses => divisão e Mul@plicação => Adição e Subtração
Armazenando Strings
• $A = ‘Olá, Pessoal ! ‘;
• $B = “ Rua Javali 3456 “ ;
Diferença entre as aspas simples e
aspas duplas
Sequência de Escape
• \n Nova linha
• \t Tabulação horizontal
• \\ A própria barra ( \ )
• \$ O símbolo $
• \’ Aspa simples
• \“ Aspa dupla
Concatenar Strings
Como descobrir o comprimento de
uma string
Como eliminar espaços em branco
finais e iniciais de uma string
Como converter em letras
maiúscula ou minúscula
Como trabalhar com substrings
Exemplo de arrays
<html>
<head>
</head>
<body>
<?php // Vetor unidimensional $hoje = date(“w”);
$diaSemana[0] = “Domingo”;
$diaSemana[1] = “Segunda-‐feira”;
$diaSemana[2] = “Terça-‐feira”;
$diaSemana[3] = “Quarta-‐feira”;
$diaSemana[4] = “Quinta-‐feira”;
$diaSemana[5] = “Sexta_feira”;
$diaSemana[6] = “Sábado”;
echo “ Hoje é : $diaSemana[$hoje]”;
?>
</body>
</html>
Booleanos
• 0 falso (false)
• Outro valor ≠ 0 verdadeiro (true)
• Ex.:
– 0 == falso
– 1 == verdadeiro
– -‐2 == verdadeiro
Constantes
Formulários
• Um formulário deve sempre estar entre as tags
<form> ...</form>
• A tag <form> contém uma série de atributos, dentre eles:
• ac@on => Informa ao servidor a página que deve ser carregada, assim que o usuário clicar sobre o botão “enviar” conJdo no formulário. Exemplo:
• <form acFon=“resultado.php” ...>
Formulários
• Method => Este atributo controla como as
informações conJdas no formulário devem ser enviadas ao servidor.
– Existem os métodos GET e POST – GET
– acrescenta à URL um ponto de interrogação (?) seguido por todos os nomes dos campos – Ex. hnp://www.php.com.br/formulario.php?
txtnome=Jm
Formulários
• Method => Este atributo controla como as informações conJdas no formulário devem ser enviadas ao servidor.
– POST
– Transmite as informações de um modo invísivel, ou seja não as insere na URL mas sim no corpo da
requisição HTML
– Permite uma quanJdade maior de informações a ser passada de uma página para outra.
– Ex. hnp://www.php.com.br/formulario.php, ele não
apresenta o conteúdo.
IMPORTANTE
• O PHP armazena as variáveis vindas por GET e por POST em vetores associaJvos (vetores
cujos índices são strings).
$meu id = $_GET[“id”]
$minhadescricao = $_GET[“descricao”]
$nome = $_POST[“nome”]
$idade = $_POST[“idade”]
Principais controles do HTML que são usados na coleta de dados em um formulário
Caixa de texto de uma linha (TEXT);
Caixa de texto de rolagem (TEXTAREA);
Caixa de seleção (CHECKBOX);
Botão de radio (RADIO);
Menu suspenso (SELECT e OPTION);
Botão de envio (SUBMIT).
teste.php
Caixa de texto de uma linha
Caixa de texto de uma linha
formulario.php
Exercício
• Teste os códigos anteriores.
– Crie as duas páginas e teste a passagem de valores.
– Mude o atributo method para get e observe a
diferença.
Botão de opção (RADIO)
<html>
<head>
<title> Formulário com botão de radio </Ttitle>
</head>
<body>
Qual é o seu estado civil ?
<form Method = “GET” Action = “civil.php”>
<input type=“radio” name=“opcao” value=“Casado” >Casado<br>
<input type=“radio” name=“opcao” value=“Solteiro” >Solteiro<br>
<input type=“radio” name=“opcao” value=“Viúvo” >Viúvo<br>
<input type=“radio” name=“opcao” value=“Separado” >Separado<br>
<input type=submit value=“Enviar”>
</form>
</body>
</html>
Botão de opção (RADIO)
A instrução condicional IF
<html>
<body>
<?php
$valor = 5;
if ($valor == 5) {
echo “A variável valor é : $valor”;
} ?>
</body>
</html>
Instrução condicional switch
<?php
$valor = 2;
switch ( $valor ) { case 1 :
echo “ Primeiro valor”;
break;
case 2 :
echo “ Segundo Valor “;
break;
default :
echo “ Valor maior que 2 “;
break;
}
?>
Operadores Relacionais
Operadores lógicos
&& Verdadeiro se uma expressão A e uma expressão B forem verdadeira
and Verdadeiro se uma expressão A e uma expressão B forem verdadeira
|| Verdadeiro se uma expressão A ou uma expressão B forem verdadeira
or Verdadeiro se uma expressão A ou uma expressão B forem verdadeira
! Será considerado verdadeiro se o valor da
expressão for falso
Exercício
Escreva uma página com os seguintes campos de formulário:
Nome Endereço Idade
Sexo
Escreva um programa em php para receber os valores do formulário acima e apresentar na tela o nome,endereço e
verificar se a idade for maior que 18 anos, mostrar a mensagem
“Minha idade é : XX”, seguido do sexo e do endereço. Caso
contrário deve se escrever a mensagem “Menor de idade” e não mostrar o sexo e o endereço.