O documento descreve a linguagem de programação PHP. 1) PHP é uma linguagem interpretada no servidor para criar scripts em páginas web. 2) O código PHP é interpretado no servidor antes de enviar a página HTML ao navegador. 3) Fatores como ser gratuita e compatível com bancos de dados e servidores web ajudaram no sucesso do PHP.
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.
2
2
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.
3
3
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.
4
4
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
6
6
6
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).
9
10. Exemplo1 de script em PHP
Nota: a instrução “echo” permite
apresentar vários tipos de informação no
monitor.
10
11. Exemplo2 de script em PHP
Nota: Em PHP podemos usar aspas
simples ou duplas e plicas para incluir
strings e outros elementos.
11
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 ;)
13
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.
14
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
16
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
17
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
18
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
19
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
21
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.
22
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.
23
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).
24
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.
25
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).
26
27. 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
28. 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
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.
30
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.
31
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
33
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.
34
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>;] }
35
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.
36
38. Ciclo WHILE
while (condição)
{<bloco de instruções>;}
Esta estrutura é usada quando pretendemos
executar acções distintas dependendo das condições
impostas.
38
39. 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.
40
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];
}
44
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;
45
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.
48
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…
49
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.
50
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’);
55
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/>’;
56
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”.
57
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/>';
58
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.
59
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.
61