Minicurso php

65
Laboratório de Ensino de Ciência da Computação - LECC Introdução ao PHP Danilo Victor Barbosa da Costa João Paulo Ferreira da Silva

description

PHP

Transcript of Minicurso php

Page 1: Minicurso php

Laboratório de Ensino de Ciência da Computação - LECC

Introdução ao PHP

Danilo Victor Barbosa da Costa João Paulo Ferreira da Silva

Page 2: Minicurso php

Apresentação dos ministrantes Introdução Objetivo O que é preciso para programar em PHP? Sintaxe básica Variáveis Tipos de dados Constantes Operadores Operadores Lógicos Estruturas de Controle switch / case for while

Roteiro

Page 3: Minicurso php

do – while

Matrizes

Inclusão de arquivos

Parâmetros

Formulários

Mini - projeto

Roteiro

Page 4: Minicurso php

Danilo Costa (3º período)

João Paulo (3º período)

Apresentação dos ministrantes

Page 5: Minicurso php

1. <?php

2. function aprenderPHP(){

3. $passo1 = (“Assistir o minicurso”);

4. $passo2 = (“Praticar”);

5. return “Você aprendeu o básico de PHP”;

6. }

7. ?>

Objetivo

Page 6: Minicurso php

Introdução

PHP significa: Hypertext Preprocessor . O produto foi originalmente chamado de “Personal Home Page Tools”, mas como se expandiu em escopo um nome novo e mais apropriado foi escolhido por votação da comunidade.

Page 7: Minicurso php

Você pode utilizar qualquer extensão que desejar para designar um arquivo PHP, mas os recomendados foram *.php , *.phtml.

O PHP está atualmente na versão 5.x, chamado de PHP5 ou, simplesmente de PHP.

PHP é uma linguagem de criação de scripts embutida em HTML no servidor.

Introdução

Page 8: Minicurso php

Introdução

Representação de como PHP e HTML se comportam.

Page 9: Minicurso php

Linux: Instalação conhecida como “LAMP” que corresponde : Linux, Apache, MySQL, PHP. O usuário deve instalar cada um manualmente.

Windows: Instalação conhecida como “WAMP” que corresponde : Windows, Apache, MySQL, PHP. Nesse caso, o usuário pode usar o Wampserver, o XAMP, etc. Estes instalam o “pacote” LAMP automaticamente.

O que é preciso para programar em PHP?

Page 10: Minicurso php

Tags especiais indicam ao PHP onde estão os blocos de código. A tag de abertura é formada por um sinal de “menor que” (<), um sinal de interrogação (?) e a sigla (php). A tag de fechamento é formada por um ponto interrogação (?) e sinal de “maior que” (>).

Sintaxe básica

Page 11: Minicurso php

Ex:

1. <?php

2. ...

3. ?>

Sintaxe básica

Page 12: Minicurso php

Sintaxe básica

Page 13: Minicurso php

Variáveis armazenam valores. Pode-se referir a variáveis para obter seu valor ou para alterar seu conteúdo.

No PHP elas são representadas por um cifrão ($) mais o nome da variável. Os nomes de variáveis válidos são iniciados por letras ou por um subscrito ( _ ). Existe diferenciação entre nomes de variáveis maiúsculas e minúsculas.

Variáveis

Page 14: Minicurso php

Quando a variável é declarada dentro de uma função, ela só estará disponível para o código desta função. O código a seguir gera um erro devido a essa característica:

Variáveis

Page 15: Minicurso php

1. <?php

2. function soma($a){

3. $b = $a + 5;

4. }

5. soma(10);

6. echo "o valor de 'b' é $b";

7. ?>

Variáveis

Page 16: Minicurso php

Para evitar este tipo de problema, deve-se definir a variável como global. O código a seguir resolve o problema do código anterior.

Variáveis

Page 17: Minicurso php

1. <?php

2. function soma($a)

3. {

4. global $b;

5. $b = $a + 5;

6. }

7. soma(10);

8. echo "o valor de 'b' é $b";

9. ?>

Variáveis

Page 18: Minicurso php

O PHP suporta vários tipos de dados:

Inteiro – Números inteiros (isto é, números sem ponto decimal);

Números de dupla precisão – Números reais (isto é, números que contêm um ponto decimal);

String – Texto entre aspas simples (´ ´) ou duplas (“ “);

Booleanos – armazenam valores verdadeiros ou falsos, usados em testes de condições;

Array – Grupo de elementos do mesmo tipo;

Objeto – Grupo de atributos e métodos;

Tipos de dados

Page 19: Minicurso php

Recurso – Uma origem de dados externa;

Nulo – Nenhum valor;

Tipos de dados

Page 20: Minicurso php

1. // dados boleanos

2. $a = True;

3. if ($a)

4. {

5. echo "Verdadeiro";

6. }

7. else

8. {

9. echo "Falso";

10. }

Tipos de dados

Page 21: Minicurso php

1. // dados com hexadecimais

2. $a = 0x1A; //Corresponde ao decimal 26

3. $b = -16;

4. $c = $a + $b;

5. echo "a + b = $c";

Tipos de dados

Page 22: Minicurso php

1. // pontos flutuantes são representados por (.)

2. $preco = 11.90;

3. $soma = $preco * 4;

4. echo "Quatro revistas W custam R$ $soma<br>";

Tipos de dados

Page 23: Minicurso php

1. // strings são representadas por aspas simples e duplas

2. $texto1 = 'Esse é o primeiro texto.<br>';

3. $texto2 = "Esse é o segundo texto.";

4. echo $texto1;

5. echo $texto2;

Tipos de dados

Page 24: Minicurso php

1. /* As variáveis do tipo matriz ou array permitem o armazenamento de

2. diversos elementos

3. referenciados por uma mesma referência*/

4. $frutas = array(

5. 1 => "Laranja",

6. 2 => "Maçã",

7. 3 => "Uva");

8. echo "<li> $frutas[1]<br>";

9. echo "<li> $frutas[2]<br>";

10. echo "<li> $frutas[3]<br>";

Tipos de dados

Page 25: Minicurso php

Constantes são identificadores para valores simples. O seu conteúdo não muda durante a execução do código. Elas são criadas com a função define e, por convenção, são escritas com letras maiúsculas e não usam o cifrão no início.

Constantes

Page 26: Minicurso php

1. <?php

2. define("CONSTANTE", "Alô mundo.");

3. echo CONSTANTE;

4. ?>

Constantes

Page 27: Minicurso php

São usados para efetuarem operações sobre as variáveis e constantes. Os operadores do PHP são:

+ soma;

- subtração;

/ divisão;

^ exponenciação;

% módulo, resto da divisão;

++ acrescenta um a uma variável;

Operadores

Page 28: Minicurso php

-- subtrai um de uma variável;

+= soma um valor a uma variável e lhe atribui o resultado.

Constantes

Page 29: Minicurso php

1. <?php

2. $x = 2;

3. echo($x + 2);

4. echo "<br>";

5. $x = 2;

6. echo(5 - $x);

7. echo "<br>";

8. $x = 4;

9. echo($x * 5);

Operadores

Page 30: Minicurso php

10. echo "<br>";

11. $x = 4;

12. echo($x * 5);

13. echo "<br>";

14. $x = 15;

15. echo($x / 5);

16. echo "<br>";

17. $x = 10;

18. echo($x % 8);

Operadores

Page 31: Minicurso php

19. echo "<br>";

20. $x = 5;

21. $x++;

22. echo($x);

23. echo "<br>";

24. $x = 5;

25. $x--;

26. echo($x);

27. echo "<br>";

Operadores

Page 32: Minicurso php

28. $x = 8;

29. echo($x);

30. echo "<br>";

31. $x = 8;

32. $x = $x + 10;

33. echo($x);

34. echo "<br>";

35. $x = 8;

36. $x += 10;

37. echo($x);

38. ?>

Operadores

Page 33: Minicurso php

Há também os operadores de comparação. Uma comparação sempre gera um dos dois valores possíveis: vazio, que corresponde a falso, e 1, que corresponde a verdadeiro.

Operadores

Page 34: Minicurso php

== é igual a;

! = não é igual a;

> é maior que;

< é menor que;

>= é maior ou igual a;

<= é menor ou igual a;

Operadores

Page 35: Minicurso php

1. $resultado = ($x > 8);

2. if($resultado == 1)

3. {

4. echo "verdadeiro";

5. }

6. else

7. {

8. echo "falso";

Operadores

Page 36: Minicurso php

and ou && - operador lógico “e”, apenas retornando verdadeiro quando as duas condições envolvidas no teste forem verdadeiras;

or ou | | operador lógico “ou”, retornando verdadeiro quando uma ou as duas condições envolvidas no teste forem verdadeiras;

! operador lógico “não”, invertendo o resultado de um teste ;

xor – operador lógico “ou exclusivo” que determina se uma de duas condições é verdadeira mas não ambas. Se ambas forem verdadeiras, o teste final será falso.

Operadores Lógicos

Page 37: Minicurso php

1. $x = 6;

2. $y = 3;

3. $resultado = ($x < 10 && $y > 1);

4. if($resultado == 1)

5. {

6. echo "verdadeiro";

7. }

8. else

9. {

10. echo "falso";

11. }

Operadores Lógicos

Page 38: Minicurso php

No PHP, as estruturas de controle são formadas por declarações condicionais e de looping:

if – executa uma ação se uma condição for atendida. O bloco de comandos a ser executado deve ser escrito entre chaves;

else – pode-se colocar um conjunto de comandos alternativos caso o teste do if seja negativo. A declaração else deve vir logo após o bloco de código relacionado ao if. O comando if também pode ser usado após a declaração else.

Estruturas de Controle

Page 39: Minicurso php

1. <?php

2. $x = 20;

3. if ($x > 10)

4. {

5. echo("O valor da variável é maior que 10.");

6. }

7. ?>

Estruturas de Controle

Page 40: Minicurso php

1. <?php

2. $cor = "branco";

3. if ($cor == "vermelho")

4. {

5. echo("A variável contém o valor 'vermelho'.");

6. }

7. else if ($cor == "azul")

8. {

9. echo("A variável contém o valor 'azul'.");

10. }

Estruturas de Controle

Page 41: Minicurso php

11. else if ($cor == "amarelo")

12. {

13. echo("A variável contém o valor 'amarelo'.");

14. }

15. else

16. {

17. echo("O valor da variável não foi identificado.");

18. }

19. ?>

Estruturas de Controle

Page 42: Minicurso php

Forma de testar uma dentre várias possibilidades. A declaração default executa caso nenhuma das opções for verdadeira. A declaração break faz com que o restante do código não seja executado caso o teste seja verdadeiro.

switch / case

Page 43: Minicurso php

1. <?php

2. $d = getdate();

3. switch ($d['wday'])

4. {

5. case 5:

6. echo("Sexta-feira");

7. break;

8. case 6:

9. echo("Sábado");

10. break;

switch / case

Page 44: Minicurso php

11. case 0:

12. echo("Domingo");

13. break;

14. default:

15. echo("Outro dia da semana");

16. }

17. ?>

switch / case

Page 45: Minicurso php

Estrutura de looping que executa um bloco de código quantas vezes for indicado em uma variável. Deve-se definir a variável que será testada no looping, uma condição de teste e o incremento (ou decremento) da variável de controle.

for

Page 46: Minicurso php

1. <?php

2. for ($i = 1; $i < 10; $i++)

3. {

4. echo("Linha $i <br>");

5. }

6. ?>

for

Page 47: Minicurso php

Estrutura de looping que não necessita de um número determinado de iterações. Ele é executado enquanto uma condição for verdadeira.

while

Page 48: Minicurso php

1. <?php

2. $i = 1;

3. while ($i < 10000)

4. {

5. echo($i);

6. $i *= 2;

7. echo(" vezes 2 é igual a $i <br>");

8. }

9. ?>

while

Page 49: Minicurso php

Outra forma de looping que executa um bloco de código, testa uma condição e repete novamente o bloco de código (ou não).

do - while

Page 50: Minicurso php

1. <?php

2. $i = 1;

3. do

4. {

5. echo ("Linha $i <br>");

6. $i++;

7. }

8. while ($i < 10)

9. ?>

do -while

Page 51: Minicurso php

Matrizes são variáveis que armazenam mais de um valor simultaneamente. Uma matriz no PHP é atualmente um mapa ordenado. Um mapa é um tipo que relaciona valores para chaves. Este tipo é otimizado de várias maneiras, então você pode usá-lo como um array real, ou uma lista (vetor), hashtable (que é uma implementação de mapa), dicionário, coleção, pilha, fila, etc. As referências aos elementos da matriz podem ser declaradas como valores numéricos ou strings.

Matrizes

Page 52: Minicurso php

1. <?php 2. $colaboradores = array(0 => "Marcos", 3. 1 => "Eduardo", 4. 2 => "Maria", 5. 3 => "Sérgio", 6. 4 => "Rosangela"); 7. echo "<b>Colaboradores</b>"; 8. echo "<ul>"; 9. echo "<li>" . $colaboradores[0]; 10. echo "<li>" . $colaboradores[1]; 11. echo "<li>" . $colaboradores[3]; 12. echo "<li>" . $colaboradores[2]; 13. echo "<li>" . $colaboradores[4]; 14. echo "</ul>"; 15. ?>

Matrizes

Page 53: Minicurso php

O comando include permite a inclusão de outros arquivos php dentro do script que está sendo executado. Pode-se criar uma função que imprime a data atual e pode-se reusá-lo sem precisar reescrever o código cada vez que for necessário. No exemplo a seguir, pode-se chamar o primeiro script de topo.php e o próximo script o inclui através do comando include.

Inclusão de Arquivos

Page 54: Minicurso php

1. <body>

2. <?php

3. $meses = array(1 => "Janeiro",

4. 2 => "Fevereiro",

5. 3 => "Março",

6. 4 => "Abril",

7. 5 => "Maio",

8. 6 => "Junho",

9. 7 => "Julho",

10. 8 => "Agosto",

11. 9 => "Setembro",

Inclusão de Arquivos

Page 55: Minicurso php

12. 10 => "Outubro",

13. 11 => "Novembro",

14. 12 => "Dezembro");

15. $hoje = getdate();

16. $dia = $hoje["mday"];

17. $mes = $hoje["mon"];

18. $nomeMes = $meses[$mes];

19. $ano = $hoje["year"];

20. echo "Hoje é dia $dia de $nomeMes de $ano."

21. ?>

22. </body>

Inclusão de Arquivos

Page 56: Minicurso php

Para chamar o arquivo topo.php, usamos o seguinte código em um novo arquivo php.

Inclusão de Arquivos

Page 57: Minicurso php

1. <body>

2. <?php

3. include("topo.php");

4. ?>

5. </body>

Inclusão de Arquivos

Page 58: Minicurso php

Este recurso pode ser bem interessante, para facilitar a atualização de setores do seu site, pois podemos importar arquivos no formato texto como, por exemplo, arquivos em TXT , apenas é necessário salvá-lo no formato UTF-8, para que o navegador consiga interpretar corretamente a acentuação.

Inclusão de Arquivos

Page 59: Minicurso php

O uso de parâmetros facilita a programação porque permite a passagem de dados entre o browser e o script ou entre scripts. A passagem de parâmetros entre o browser e o script é feita dentro da URL, por exemplo, e é manipulada pela função $_GET.

Nesse exemplo a seguir, cada um dos links envia um valor diferente para a página que é aberta parametros.php. Para enviar um parâmetro, a sintaxe inclui um sinal de interrogação, o nome da variável, um sinal de igual e o valor da variável.

Parâmetros

Page 60: Minicurso php

1. <body> 2. <?php 3. if (isset($_GET["valor"])) 4. { 5. $valor = $_GET["valor"]; 6. echo "Você clicou no valor $valor <p>"; 7. } 8. else 9. { 10. echo "Clique em um dos valores:<p>"; 11. } 12. ?>

Parâmetros

Page 61: Minicurso php

13. <a href="parametros.php?valor=1">Valor01</a><br>

14. <a href="parametros.php?valor=2">Valor02</a><br>

15. <a href="parametros.php?valor=3">Valor03</a><br>

16. <a href="parametros.php?valor=4">Valor04</a><br>

17. <a href="parametros.php?valor=5">Valor05</a><br>

18. </body>

Parâmetros

Page 62: Minicurso php

Os valores enviados através de um formulário podem ser recuperados pela variável predefinida $_POST. Através dela é possível obter os dados que foram enviados através do método POST do HTML, bastando indicar o nome do campo do formulário. No comando action do formulário, deve-se indicar a página PHP que irá receber os valores. O mesmo documento pode conter o código e o formulário.

Formulários

Page 63: Minicurso php

1. <body> 2. <?php 3. if (isset($_POST["pnome"]) && isset($_POST["snome"])) 4. { 5. $pnome = $_POST["pnome"]; 6. $snome = $_POST["snome"]; 7. echo "Olá $pnome $snome.<p>"; 8. } 9. else 10. { 11. echo "Digite o seu nome.<p>"; 12. } 13. ?> 14. >

Formulários

Page 64: Minicurso php

15. <form method="post" action="formulario.php">

16. Nome: <input type="text" name="pnome">

17. <br>

18. Sobrenome: <input type="text" name="snome">

19. <br><br>

20. <input type="submit" value="Enviar">

21. </form>

22. </body>

Formulários

Page 65: Minicurso php

Sugestão: Formulário.

Mini-Projeto