Upload
tomascarol2
View
497
Download
4
Embed Size (px)
Citation preview
1
PHP
2
2
Introdução (1)
O PHP é uma linguagem de programação de scripts para serem interpretados no lado dos servidores. Numa fase inicial(1995), o PHP surgiu com o significado
= Personal Home Pages, com um conjunto de
ferramentas de tipo CGI. Mas diversos factores
contribuíram para que o PHP conhecesse uma grande
difusão entre os programadores de Web Sites e,
actualmente, a sigla PHP tem o seguinte significado:
PHP Hypertext PreProcessor.
3 3
Introdução(2)
O PHP é uma linguagem interpretada, tal como o
Javascript. Mas, enquanto que o código Javascript é
interpretado no próprio browser que recebe a página
HTML, o código PHP é interpretado no servidor que
envia a página.
Assim, quando abrimos um documento HTML com um
script em Javascript, podemos pedir para ver o código
desse script no browser; mas quando recebemos uma
página web que tem um script PHP na sua origem,
apenas podemos ver no nosso browser o código HTML.
4 4
Factores de ajuda ao grande êxito do
PHP:
-É uma tecnologia distribuída gratuitamente;
- Tem excelente capacidade de articulação com:
- Os servidores Web mais divulgados, designadamente:
o Apache (gratuito) e o IIS (Internet Information Server)
comercializado pela Microsoft.
- Os Sistemas de Gestão de Bases de Dados de
distribuição gratuita ( a começar pelo MySql) e também
outros de natureza comercial.
5 5
Representação esquemática da arquitectura e do
funcionamento da tecnologia PHP
6
6 6
Como criar e executar scripts em
PHP?
Para testarmos um script em PHP precisamos de ter
acesso a um servidor Web, ainda que este esteja só
instalado localmente no nosso computador. Assim, para
podermos visualizar num browser as páginas
programadas em PHP teremos de fazer o upload dos
ficheiros para um servidor que interprete esta
linguagem.
No nosso caso, vamos utilizar o software WampServer, que junta todas as ferramentas necessárias para simular
um servidor localmente. É de distribuição gratuita –
freeware.
http://www.wampserver.com/en/download.php
7
PHP
(PHP HyperText PreProcessor)
8
Scripts PHP conjugados com código HTML
9
► Existem várias formas de conjugar scripts PHP com
código HTML. Podem-se escrever documentos HTML em que o código PHP surge intercalado com o código HTML. As tags que indicam os scripts de PHP podem ter 4 formas diferentes:
1 – Estilo XML: <?php... ?>; 2 – Estilo Abreviado: <? ...?>; 3 – Estilo ASP: <% ... %>; 4 – Estilo Script: <script language =‘php’ ... </script> A forma mais usual é o estilo XML(Extensible Markup
Language).
10
Exemplo1 de script em PHP
Nota: a instrução “echo” permite apresentar vários tipos de informação no monitor.
11
Exemplo2 de script em PHP
Nota: Em PHP podemos usar aspas simples ou duplas e plicas para incluir strings e outros elementos.
12
Elementos Básicos da Linguagem PHP
13
O PHP tal como o Javascript é uma linguagem C like, ou
seja, tem semelhanças com a linguagem C, a nível de
operadores, palavras chave, estruturas de controlo, etc.
No entanto, também existem algumas diferenças
importantes:
- Em PHP há a diferença entre maiúsculas e minúsculas
o PHP é Case Sensitive;
- Os nomes das variáveis começam sempre com o
caracter $;
- Os nomes das funções podem ser escritos com
maiúsculas ou minúsculas;
- Uma instrução termina com ; excepção é a instrução
que acaba junto a uma tag de fim de código ?> (aqui é
opcional o ;)
14
Continuação das diferenças na linguagem PHP:
- Um bloco de instruções é incluído dentro de chavetas;
- Os comentários inserem-se entre os sinais /* */ ou,
numa linha após um sinal // ou, #
Finalmente em PHP: os operadores, as estruturas de
controlo são os mesmos usados em C/C++, embora
estas últimas tenham sintaxes alternativas.
As funções criadas pelo programador têm uma estrutura
semelhante à usada no C/C++. Os nomes das funções
podem ser escritas com maiúsculas ou minúsculas.
15
Operadores Aritméticos
Operador Significado
+ Adição
- Subtracção
* Produto
/ Divisão
% Resto da divisão inteira
16
Operadores Aritméticos de Atribuição
Operador Significado
+= Adição seguida de atribuição
-= Subtracção seguida de atribuição
*= Produto seguido de atribuição
/= Divisão seguido de atribuição
%= Resto da divisão inteira seguido de atribuição
X+=Y => X=X+Y;
X-=Y => X=X-Y;
X*=Y => X=X*Y;
X/=Y => X=X/Y; X%=Y => X=X%Y
17
Operadores de Incremento e Decremento
Operador Significado
++ Incremento
-- Decremento
X=++A => X=A+1 ; A=A+1
X=A++ => X=A ; A =A+1
X=-- A => X=A-1 ; A=A-1
X=A--; => X=A ; A=A-1
18
Operadores Relacionais ou Comparativos
Operador Significado
== Igual a
!= Diferente de
< Menor que
> Maior que
>= Maior ou igual que
<= Menor ou igual que
=== Igualdade Restrita
!== Desigualdade Restrita
19
Exemplos de Utilização de vários Operadores em PHP
=== Igual restrito – retorna valor true se os dois operandos
forem iguais e do mesmo tipo.
!== Diferente restrito – retorna valor true se os dois
operandos forem de valor e/ou tipo diferente.
Exemplos:
12<5 – false
‘12’<‘5’ – false
‘12’<5 – false ( o ‘12’ é convertido em 12)
‘5’ == 5 – true ( o ‘5’ é convertido em 5)
‘5’ ===5 – false
‘5’!== 5 - true
20
Operadores Lógicos
Operador Significado
! Not – negação
&& And - conjunção
|| Or - disjunção
(3==3) && (3<=3) => True
(3==3) || ( 3 !=3) => True
!( 3==5) => True
21
Operador de Junção de strings
Operador Significado
. Junção de strings
Operador de Indicação de Tipo
Operador Significado
Gettype Avalia o tipo de dados que uma variável assumiu num dado momento
22
Utilização de Variáveis em PHP
•Em PHP, não existe declaração prévia de variáveis.
•Em PHP, uma variável passa a existir quando o seu nome é
escrito pela primeira vez. Normalmente, isso acontece
numa instrução de atribuição, em que uma variável recebe
um determinado valor , por exemplo: $X =10
•O tipo de dados de uma variável é determinado pelo último
valor que lhe foi atribuído.
23
Tipos de Dados em PHP
•Em PHP, apesar de não existirem palavras próprias para
definir os tipos de dados a que as variáveis pertencem,
existem, implicitamente, os principais tipos de dados
primitivos:
•Booleanos ou lógicos;
•Números inteiros;
•Números reais ou do tipo floating point;
•Strings ou cadeias de caracteres.
Para além destes referidos existem outros como: array,
object, resource (recurso) e o tipo especial Null.
24
Exemplo de script em PHP em que se usam vários tipos de dados
Nota: Em PHP podemos definir constantes com a função define(constante,valor). Por exemplo: define(TAXA, 0.19).
25
Variáveis Globais e Locais em PHP
•Em PHP, por defeito as variáveis são locais, pelo que
não são acessíveis em todo o código.
26
Variáveis Globais e Locais em PHP
Por vezes, poderá ser necessário declarar variáveis
que necessitem de existir durante todo o código
(Variáveis Globais) ou apenas em certos momentos
do código (Variáveis Locais).
Exemplo1:
Uma variável definida dentro de uma função só existe dentro dessa função.
<?php
$a=3;
function ver() {
$b=$a+2; echo $b;}
ver();
echo"<br>";
echo $a;
echo"<br>"; echo $b;
?>
27
Exemplo 2:
Uma variável definida fora de uma função só existe fora dela.
<?php
$a=3;
function ver() { global $a;
$b=$a+2;
echo $b;}
ver(); echo"<br>";
echo $a;
echo"<br>";
echo $b;
?>
28
29
Estruturas de Controlo de Execução
30
Estruturas de controlo
As estruturas de controlo usadas em PHP são muito
semelhantes às usadas em C/C++ ou Javascript.
No entanto, em PHP existem, para algumas destas
estruturas, sintaxes alternativas semelhantes às que
se usam em Visual Basic ou VBScript.
31
Estrutura de decisão “IF – else”
if (condição) <bloco de instruções>;
[elseif (condição)
<bloco de instruções>; ]
[ else < bloco de instruções>;]
Esta estrutura é usada quando pretendemos executar acções distintas
dependendo das condições impostas.
32
Exemplo “IF – else”
<?php $x=5;
if ($x == 0)
{echo "Número" .$x;}
elseif ($x==1)
{echo "Número" .$x;} else
{echo "Número errado!!!" ;}
?>
Ficheiro: est_cont_if.php
33
Exercício
Resolver o exercício anterior, mas para um valor de X qualquer dado pelo
utilizador.
Resolução:
Est_cont_if2.php
Form_pedir_dados.php
34
Sintaxe alternativa do “IF - Else”
if (condição)
<bloco de instruções>;
[elseif (condição):
<bloco de instruções>; ]
[ else: < bloco de instruções>;]
endif;
Consiste em colocar 2 pontos após a condição if; após a condição
elseif (se existirem) e após a clausula else ( se esta existir). Indica-se
o fim da estrutura com a palavra endif.
35
Estrutura de selecção “ Switch - Case”
switch (expressão/selector){ case valor1: <bloco de instruções_1>; break;
case valor2: <bloco de instruções_2>; break
…
[default: < bloco de instruções_n>;] }
36
Sintaxe alternativa do “Switch – Case”
switch (expressão/selector){ case valor1: <bloco de instruções_1>; break;
case valor2: <bloco de instruções_2>; break
…
[default: < bloco de instruções_n>;]
endswitch;
Consiste em colocar 2 pontos após a expressão com base na qual
é tomada a decisão. O final da estrutura acaba com a palavra endswitch e ponto e vírgula. Inclui-se também uma instrução
“break” no final de cada case e bloco de instruções.
37
Estruturas de Controlo de Repetição
(CICLOS)
38
Ciclo WHILE
while (condição)
{<bloco de instruções>;}
Esta estrutura é usada quando pretendemos
executar acções distintas dependendo das condições
impostas.
Sintaxe alternativa “while”
while (condição):
{<bloco de instruções>;}
Endwhile;
Consiste em colocar 2 pontos após a condição de avaliação
do ciclo. O final da estrutura acaba com a palavra endwhile seguida de ponto e vírgula.
40
Ciclo DO - WHILE
do
{<bloco de instruções>}
while (condição);
Neste caso, o bloco de instruções do ciclo executa
sempre pelo menos uma vez, pois a condição de
controlo é colocada no final do ciclo.
Ciclo For
for (inicialização; condição;incremento)
{<bloco de instruções>;}
42
Ciclo Foreach
Este ciclo existente em PHP só pode ser usado com a
estrutura de dados ARRAY.
43
Funções
44
As funções em PHP são parecidas Às funções
apresentadas no Javascript. São definidas pela
palavra Function podendo, receber ou não
parâmetros, bem como retornar ou não valores.
Sintaxe:
Function nome_da_função ($paramtero1, parametro2,…)
{
<Bloco de instruções>;
Return [$valor ou expressão];
}
45
Algumas vantagens das funções:
-Permitem que o código fique mais perceptível e
menos confuso.
- Deixa de haver necessidade de repetir determinado
código ao longo do programa;
46
Exemplo1:
Function alerta ( )
{
Echo “Dados incorrectos!”;
}
Exemplo2:
Function soma ($valor1, $valor2 )
{
$soma_val = $valor1 + $valor2;
Return $soma_val;
}
Classes e Objectos
48
A linguagem PHP é do tipo POO (orientada a
objectos). Quer dizer que nesta linguagem existem
um conjunto de objectos que trocam mensagens
entre si. Imagine um objecto com nome “carro”.
Podemos definir este objecto como sendo um
conjunto de 4 rodas, volante, assentos, portas,
motor, etc. Quando pegamos no carro para o usar
não temos de pensar em todos os seus
componentes. Na programação o processo é o mesmo... Temos objectos constituídos por vários atributos
mas que se definem por uma só palavra. Para
criarmos um objecto, criamos primeiro uma classe.
49
Classe – é um conjunto de funções e variáveis que
posteriormente são serão concretizadas ou
instanciadas através de um objecto.
No exemplo seguinte será criada uma classe de
nome “humano”:
<?php
Class humano {
Function cabeca () {
echo “Olá eu sou a parte da cabeça!”;}
Function tronco(){
echo “Olá eu sou a parte do tronco”!;}
Function membros () {
echo “ Olá eu sou a parte dos membros!”;}
}
Continua no diapositivo seguinte…
50
$X = new humano; // declaração do objecto que representa a
classe humano e tem de ter o mesmo nome;
$X -> cabeca();
$X -> tronco();
$X -> membros();
?>
NOTA:
O acesso à classe faz-se através de um objecto
criado com o operador new seguido do nome da
classe respectiva.
Para acedermos ao conteúdo da classe(funções)
usamos o objecto criado, juntamente com o
operador -> e o nome da função.
51
Strings, aspas e caracteres especiais em PHP
52
Em PHP podemos escrever strings dentro de aspas
duplas ou simples.
-Instruções válidas:
echo “http//www.oi.com/”; echo “<br/>”;
echo ‘http//www.oi.com/’; echo ‘<br/>’;
-Instruções inválidas:
1 - echo ‘Developer´s Guide’;
2 - echo “C\Programas\”;
Corrigindo:
1 - $t1 = “Developer´s Guide”; echo”Titulo: $t1 <br/>”; ou
echo ´Titulo: ‘.$t1.’<br/>’;
2 - echo “C\\Programas\\”;
53
-Outros casos:
1 – Para escrevermos dentro de aspas:
echo “\” Manual de PHP\”;
2 – Para escrevermos o sinal $:
echo “ Valor em euros: \$25.00”;
54
Arrays
55
Um array é uma estrutura de dados que recebe um
nome e pode conter um determinado número de
elementos todos do mesmo tipo de dados.
O acesso aos dados do array faz-se indicando o
nome do array e um índice (posição do elemento no
array). No PHP os índices começam em zero. Em
PHP, um array pode ser uma estrutura mais
complexa.
Sintaxe:
$var = (valor1,valor2,…);
Exemplos:
$a =array(10,11,12); //Cria um array com 3 elementos
$nomes = array (‘Ana’,’Rui’,’Eva’);
56
Escrita dos valores de um array:
Echo $a[0]; // escreve 10
Echo $a[1];// escreve 11
Echo $a[2];// escreve 12
Ou
For($i=0;$i<3;$i++)
echo $a[$i]. ’ <br/>’;
57
Existe outro modo de criar um array em PHP.
Sintaxe:
$X [ ] = valor;
Exemplo:
$a[ ] = 3.14;
.Se ainda não existe o array $a, é criado um novo array
com 1 elemento.
.Se já existia o array $a, então é criado um novo elemento
e acrescentado ao array existente com o valor 3.14.
Um array assim criado começa só por ter 1 elemento. A
estes arrays podem ser acrescentados elementos em
qualquer altura. É aqui que surge a noção do ciclo
“Foreach”.
58
Ciclo Foreach
Este ciclo pode ser usado de 2 modos diferentes:
1 – foreach ($a as $valor) {instruções}
Exemplo:
foreach ($a as $valor)
echo $valor. ' <br/>';
59
Arrays associativos
Exemplo:
$N = array (‘Ana’ => 10; ‘Rui’ => 11; ‘Eva’ => 12);
O array $N tem a seguinte estrutura:
O 1ºelemento é identificado pela chave ’Ana’ e tem o valor 10;
O 2ºelemento é identificado pela chave ‘Rui’ e tem o valor 11….
Nota:
O array $_POST é um array associativo.
60
Funções em PHP
61
Funções em PHP
Sintaxe:
Function nome_função([parâmetros])
{
<instruções>
[return [valor ou expressão];]
}
Nota: em PHP não se indicam os tipos d edados dos
parâmetros, só os seus nomes.