Aula 04 PHP - Utilizando Funções e Manipulando Arquivos

Post on 18-Feb-2017

511 views 2 download

Transcript of Aula 04 PHP - Utilizando Funções e Manipulando Arquivos

Programação Dinâmica para Web

Manipulação de Funções

www.DanielBrandao.com.br

Objetivos

Aula 4. Funções em PHP

• Criação e Manipulação de Funções em PHP

• Variáveis Globais e Estáticas

• Manipulação de Arquivos

• Exercícios Práticos

2

1. Funções- Criação e Manipulação

Funções- Criação e Manipulação

Função é um trecho de código com um objetivo específico, encapsulado sob uma estrutura única que recebe parâmetros e retorna um valor.

Para criarmos em PHP, usamos a palavra reservada function seguido pelo nome dado a ela. Não pode haver espaços e deve começar com letras. Ex: minhaFuncao() ou minha_funcao()

4

Funções- Criação e Manipulação

Depois, dentro de {} encapsulamos o código da função. Exemplo 1:

function minha_funcao($arg1, $arg2){

$valor = $arg1 + $arg2;

return $valor;

}

5

Funções- Criação e Manipulação

Exemplo 2: cálculo média

function calcula_media($p1, $p2, $n1,$n2){

return $media = ($p1 * $n1 + $p2*$n2)/($p1+$p2);

}

Echo calcula_media(4,6,10,8);

6

Funções- Criação e Manipulação

• Exercício 1) Crie um script que receba de um formulário HTML Nome, Disciplina e uma função que receba 3 notas de um aluno e calcule a média do aluno. Deve ser impresso depois o Nome, Disciplina e Média.

7

2. Variáveis Globais e Estáticas

2. Variáveis Globais e Estáticas

• Variáveis Globais abrangem além de um escopo local, ou seja, podem ser acessadas de fora de sua função declarada. Utilizamos Global para declará-las.

• Ex 4. Conversão de Quilometro para Milha:

2. Variáveis Globais e Estáticas

• Já Variáveis Estáticas mantém seu valor recebido desde a última execução. Para declará-la utilizamos a palavra reservada static.

• Ex 5. Conversão de Quilometro para Milha:

3. Manipulação de Arquivos

3. Manipulação de Arquivos

• O PHP possui funções exclusivas para manipulação de arquivos.

• Fopen: abre um arquivo e retorna um identificador.

• Fgets: lê a linha de um arquivo. Retorna uma string.

• File: apenas lê um arquivo e retorna seu conteúdo em forma de um array.

• File_exists: verifica a existência de um arquivo.

Manipulação de Arquivos

fopen: Abre um arquivo e retorna um identificador;

13

fopen (string arquivo, string modo)

Parâmetros Descrição

arquivo String que identifica o nome do arquivo

modoDescreve a forma de abertura do arquivo (“r” – read, “w” – write, “a” – append)

Manipulação de Arquivos

fopen – Exemplo 6:

14

Manipulação de Arquivos

feof: Testa se um identificador de arquivo está no fim (End Of File);

15

feof (identificador)

Parâmetros Descrição

identificador Identificador retornado pela função fopen

Manipulação de Arquivos

fgets: Lê uma linha de um arquivo;

16

fgets (identificador, tamanho)

Parâmetros Descrição

identificador Identificador retornado pela função fopen

tamanhoQuantidade em bytes a serem retornados da leitura (opcional)

Manipulação de Arquivos

fclose: Fecha o arquivo aberto, apontado pelo identificador de arquivo;

17

fclose (identificador)

Parâmetros Descrição

identificador Identificador retornado pela função fopen

Manipulação de Arquivos

feof, fgets e fclose – Exemplo 6:

18

Manipulação de Arquivos

fwrite: Grava uma string no arquivo apontado pelo identificador de arquivo;

19

fwrite (identificador, conteúdo)

Parâmetros Descrição

identificador Identificador retornado pela função fopen

conteúdo String a ser escrita no arquivo

Manipulação de Arquivos

fwrite – Exemplo:

20

Manipulação de Arquivos

file_put_contents: Grava uma string em um arquivo;

21

file_put_contents (nome_arquivo, conteúdo)

Parâmetros Descrição

nome_arquivo Arquivo a ser aberto para escrita

conteúdo Novo Conteúdo

Manipulação de Arquivos

file_put_contents – Exemplo:

22

Manipulação de Arquivos

file_get_contents: Lê o conteúdo de um arquivo;

23

file_get_contents (nome_arquivo)

Parâmetros Descrição

nome_arquivo Arquivo a ser aberto para leitura

Manipulação de Arquivos

file_get_contents – Exemplo 8:

24

Manipulação de Arquivos

file: Lê um arquivo e retorna um array com seu conteúdo;

25

file (nome_arquivo)

Parâmetros Descrição

nome_arquivo Arquivo a ser aberto para leitura

Manipulação de Arquivos

file – Exemplo 9:

26

Manipulação de Arquivos

copy: Copia o conteúdo de um arquivo e cola em outro arquivo;

27

copy (arquivo_origem, arquivo_destino)

Parâmetros Descrição

arquivo_origem Arquivo a ser copiado

arquivo_destino Arquivo destino

Manipulação de Arquivos

rename: Renomeia um arquivo e/ou um diretório;

28

rename (nome_atual, novo_nome)

Parâmetros Descrição

nome_atual Arquivo/Diretório a ser renomeado

novo_nome Novo nome do arquivo/diretório

Manipulação de Arquivos

unlink: Remove um arquivo passado como parâmetro;

29

unlink (nome_arquivo)

Parâmetros Descrição

nome_arquivo Arquivo a ser excluído

Manipulação de Arquivos

file_exists: Verifica a existência de um arquivo ou de um diretório;

30

file_exists (nome_arquivo)

Parâmetros Descrição

nome_arquivo Nome/localização de um arquivo/diretório

Manipulação de Arquivos

file_exists – Exemplo 10:

31

Manipulação de Arquivos

is_file: Verifica se o parâmetro corresponde a um arquivo ou não;

32

is_file (nome_arquivo)

Parâmetros Descrição

nome_arquivo Nome/localização de um dado

Exercícios

Exercícios

• Exercício 1: Crie um script que gere um arquivo .txt, abra-o e guardar 3 frases nele. Depois crie um script que imprima o conteúdo gravado no arquivo.

Exercícios

Exercício 2: Faça um documento HTML que permita ao usuário digitar cinco nomes;

• Faça um script PHP com uma função que receba os nome submetidos a partir do documento HTML anterior e os salve em um arquivo. O script deverá ser capaz de imprimir os nomes salvos no arquivo.

35

Exercícios

• Exercício 3: Uma agência bancária possui dois tipos de investimentos, conforme o quadro a seguir. Faça uma função que receba o tipo de investimento e o seu valor a partir de um formulário HTML, calculando em seguida seu valor corrigido, de acordo com o tipo de investimento.

36