Slides PHP Parte1
Slides PHP Parte1
Módulo 7
CAPÍTULO 1
INTRODUÇÃO
2
Introdução
3
etc. PHP = Linguagem de Programação + Servidor
Introdução
É uma linguagem que trabalha com objectos, que é uma mais-valia e a coloca
numa posição de concorrer com linguagens rivais.
4
Acesso a documentos na Web
Isto funciona assim para texto estático, mas não é válido quando tenta aceder
a informação que muda constantemente. Aqui o browser pouco sabe sobre
os documentos do servidor, o que faz é consoante a informação vinda do
servidor, de acordo com as especificações MIME executa um conjunto de operações
que permitem saber o que fazer com um dado documento. Por exemplo se for
um documento em HTML é para visualizar, se for um ZIP é para permitir a
sucessivamente.
gravação em disco, e assim MIME – Multipurpose Internet Mail Extensions 6
HTML estático versus HTML dinâmico
Mas isto nem sempre é possível, pois por exemplo se quisermos saber a cotações
da bolsa, a evolução das taxas de juro, da temperatura da cidade, etc, é
importante termos uma aplicação capaz de gerar documentos mediante as
solicitações do utilizador (cliente). Este tipo de aplicações gera HTML dinâmico
no momento do pedido do utilizador.
7
TIPOS DE PÁGINAS WEB
– PÁGINAS ESTÁTICAS - constituídas apenas por HTML .
8
HTML estático versus HTML dinâmico
ESTÁTICO DINÂMICO
Criação de uma Cria páginas utilizando Requer primeiro a criação
página simples o HTML de um modelo (template) e
depois gera-se o conteúdo
Em projectos de Criação de Com o módulo
grande dimensão páginas individuais construído, somente o
conteúdo deve ser gerado
Em projectos especiais Projectos com interacção O website dinâmico é
com BD em tempo real são o mais aconselhável.
impossíveis
com documentos estáticos
9
HTML estático versus HTML dinâmico
ESTÁTICO DINÂMICO
No processamento O servidor tem um As páginas são criadas
no Servidor Web processamento reduzido, automaticamente, sendo
pois limita-se a ler os necessário a utilização de
ficheiros HTML. software adicional. Logo
quanto > a estrutura
do site, > o processamento
Nota: O PHP é software freeware e apresenta-se como uma solução muito interessante para a
criação de páginas dinâmicas, pois alia a facilidade de aprendizagem ao custo nulo.
10
LINGUAGEM DE SCRIPTING
11
LINGUAGEM DE SCRIPTING
Por outro lado, nas linguagens clássicas como C, Pascal, etc, o código-fonte
é
compilado num ficheiro executável por forma a poder ser utilizado.
13
O que é o PHP?
15
O PHP e o HTML
A parte do HTML que afecta directamente o PHP são os formulários (forms), pois
são estes que irão guardar momentaneamente e transmitir os dados introduzidos
pelo utilizador (input’s) para um script que o PHP vai processar.
HTML (Hyper Text Mark-Up Language) não é considerado uma LP, pois é mais
indicado para a criação, formatação e design de páginas de Web.
<HTML>
O HTML é então uma linguagem de representação visual <HEAD> ….</HEAD>
<BODY>
da informação, que é utilizada pelos programadores da Web ……
</BODY>
para descrever o conteúdo de páginas, recorrendo a
</HTML>
directivas específicas e posteriormente interpretadas pelo
browser.
Tags também conhecidas por etiquetas
HTML 16
O PHP e o HTML
Um dos pontos fortes do PHP consiste na possibilidade de poder efectuar ligações
a BD de forma fácil, simples e intuitiva. Pois mediante os input’s dos utilizadores
obtêm- se respostas imediatas sob a forma de páginas HTML.
HTML
Browser
PHP BD
18
História do PHP … curiosidades…
–O PHP foi desenvolvido por Rasmus Lerdorf como um conjunto de ferramentas para
dar resposta à necessidade de saber quem acedia à sua página pessoal.
– Foi inicialmente desenvolvido em Perl e depois totalmente reescrito em C.
–Quando esta linguagem passou a integrar o Form Interpreter(FI) que era uma
ferramenta capaz de embeber os comandos SQL dentro das páginas HTML e
assim manusear os inputs dos from’s.
– Foi então que Rasmus passou a distribuir as suas ferramentas sob o nome
de
Personal Home Page Tools (PHP versão 1.0.)
– Entretanto o PHP foi melhorado e surge PHP na versão 2.0.
–Como o PHP é código aberto (opensource), todos contribuíram e ajudaram no seu
desenvolvimento.
– O nome mudou apesar da sigla se manter (Php Hypertext Preprocessor) 19
Arquitectura e funcionamento
O PHP funciona do lado do servidor numa arquitectura cliente/servidor.
Utiliza uma linguagem de scripts embebidos no código HTML. Pois o servidor web ao
detectar a presença de código PHP processa o script embebido no código HTML,
antes de enviar qualquer informação ao browser cliente.
Para que o código PHP seja reconhecido pelo interpretador deve haver um
ficheiro
com a extensão “.php” e também devem haver as tags <?php …..? 20
>
Arquitectura e funcionamento
Além de manipular o conteúdo de páginas HTML, o PHP também pode enviar
cabeçalhos via HTTP, podendo definir cookies, sessões, redireccionamento de users
e sua autenticação.
21
CAPÍTULO 2
SINTAX
E
22
Introdução
Sempre que iniciarmos uma nova LP é importante conhecermos a sua sintaxe e forma
de utilização.
23
Introdução de código PHP no HTML
Há 4 formas de introduzir código PHP no HTML:
1. Utilizando etiquetas delimitadoras <? e ? <?
>. echo “Olá
mundo!”;
2. Utilizando etiquetas delimitadoras <php e ?> ?>
quando pretendemos integrar o PHP
com
o XML (Extensive Markup Language). <?php
echo “Olá mundo!”;
?>
Já a última forma deve ser utilizada com cuidado quando o servidor utiliza ao
mesmo tempo ASP e PHP, pois pode gerar alguns conflitos.
25
Separação de instruções e comentários
As instruções em PHP são separadas de maneira semelhante ao C, C++, Perl ou
Java utilizando o “;” ou então através da etiqueta de fim de código “?>”.
<?php
echo <? echo “Teste”
“Teste” ; php ?>
?>
26
CAPÍTULO 3
TIPOS DE DADOS
27
Tipos de Dados - Simples
O PHP suporta vários tipos de dados sendo os dados simples :
– Números inteiros (Integer);
– Números de vírgula flutuante (Float);
– Cadeias de caracteres (String);
– Valores Lógicos (Boolean);
28
Números inteiros (Integer)
As variáveis do tipo inteiro podem ser especificadas utilizando qualquer uma
das seguintes sintaxes:
29
Números de vírgula flutuante (Float)
As variáveis do tipo vírgula flutuante podem ser especificadas utilizando qualquer
uma das seguintes sintaxes:
$var = 1.234;
$var = 1.2e4;
$var = 7E-10;
30
Cadeias de Caracteres (String)
string podem ser especificadas utilizando qualquer uma das
As variáveis do
tipo seguintes Nota: Se a cadeia de caracteres estiver definida entre aspas
(“), as variáveis que estejam colocadas dentro desta
sintaxes: cadeia de caracteres são expandidas, ou seja, são
$var = 5; substituídas pelo seu valor real, ao contrário das pelicas (‘).
$var = “bom dia”Sequência de caracteres Significado
\n Mudança de linha
Nota: Outra
\r Volta ao início da linha
forma de
definir string \t Tabulação horizontal
é através \\ Imprime o caracter “\”
da pelica (‘),
\$ Imprime o caracter “$”
mas não
tem em \” Imprime o caracter aspas (“)
consideração \ onnn Imprime um caracter em formato octal
os
caracteres \ xnn Imprime um caracter em formato hexadecimal 31
especiais.
Cadeias de Caracteres (String)
Quando uma string é avaliada com um valor numérico, o valor resultante e o tipo
são determinado da seguinte forma:
–Se o valor contiver quaisquer seguintes caracteres “,”, “e” e “E” então é avaliado
como valor de dupla precisão. Caso contrário é como valor inteiro.
–Se começar por um valor numérico válido, então será este o valor a usar, caso contrário
será zero.
32
Booleanos
O tipo de dados Lógico ou booleano utiliza apenas dois valores possíveis (True
ou
False,
Tipo ou seja, Verdadeiro
Descrição ou Falso):
Boolean Valores do tipo Verdadeiro/Falso ou true/False
33
Tipos de Dados - Estruturados
O PHP suporta vários tipos de dados sendo os dados estruturados :
– ARRAYS;
– Objectos;
34
Arrays de uma só dimensão
36
Arrays de uma só dimensão
Nota: O array pode conter valores de diversos tipos em
simultâneo
37
Classes e Objectos
Exemplo:
A classe Carro que tem como atributos a cor, cilindrada, potência, consumo, etc e tem
como funcionalidades andar, parar, estacionar, etc.
38
Um exemplo da instanciação desta classe Carro seria criar o objecto “Renault 5”.
Inicialização de Objectos
Para inicializar um objecto utiliza-se a palavra-chave new (tal como em C#, C++ e Java).
function teste() {
/* parte opcional*/
}
function executa_teste()
{ echo “A executar
teste….”;
}
$variavel=1; /* Resultado */
unset($variavel);
if ($variavel==NULL) echo "Variável é NULL <br>";
else echo "Valor da variável é: ".$var."<br>"; 40
CAPÍTULO 4
VARIÁVEIS E
CONSTANTES
41
Nota: O PHP distingue entre maiúsculas e minúsculas é
Variáveis Case-sensitive.
Function teste() {
$a=0;
echo $a;
$a++;
}
Function teste() {
Esta função coloca a variável $a com o valor 0 e
static $a=0;
escreve. Depois o comando $a++ incrementa a variável, mas
echo $a;
não serve de nada, pois a variável $a perde o valor quando saí $a++;
da função. Para evitar isso devemos declarar a variável }
como estática (static). Vejamos, desta forma sempre que a
função teste é invocada escreve o valor de $a e incrementa-
o.
Variáveis Dinâmicas
Por vezes é útil a capacidade de guardar o nome de outras variáveis.
O nome de uma variável pode ser atribuído e utilizado de forma dinâmica. Vejamos:
$a = “ola”;
output
“ola mundo”
Variáveis Pré-definidas
directiva
Nas versões posteriores ao PHP 4.2.x o valor do parametro
de
da configuração do PHP, cujo nome é register_globals passou a ser
”Off”.
Portanto para lidar com variáveis externas o método mais adequado é trabalhar
com variáveis superglobais (superglobals).
<form action=“processa.php”
method=“post”>
Nome: <input type = “text” name = “nome”>
<br>
<input type = “submit”>
</form>
Ex: É aquele cookie que um site cria para que você não precise digitar sua senha
novamente quando for ao site outra vez. Outros sites podem utilizá-los para guardar as
preferências do usuário, por exemplo, quando o sítio lhe permite escolher uma cor de fundo
para suas páginas, etc
Variáveis Sessão vs Variáveis Aplicação
Variáveis de Sessão são variáveis usadas para guardar dados sobre uma sessão de
um utilizador. nas sessões é criado um identificador único(UID) por
cada visitante/utilizador e as variáveis são guardadas baseadas nesse UID. De
modo que estão disponíveis/acessíveis em todas as páginas. Antes de utilizar
qualquer variável de sessão é necessário começar a sessão. Para isso antes da tag
html deve vir a instrução
<?php session_start(); ?>
<html> ….
As constantes são como as variáveis, mas utilizando a função define, não podem
ser redefinidas.
Constantes – que são valores que se mantêm inalterados dentro de um programa.
<?php
define (“CONSTANTE” , ”Ola Mundo.”);
echo CONSTANTE ; // escreve “Ola Mundo.”
?>
<?php
function escreve_erro ($ficheiro, $linha, $mensagem) {
echo “Ocorreu um erro no $ficheiro na linha $linha: $mensagem.”;
}
escreve_erro(_FILE_ , _LINE_ , “Algo errado ocorreu!!!”);