A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

PHP e MySQL Material Livro: PHP e MySQL – Desenvolvimento Web

Apresentações semelhantes


Apresentação em tema: "PHP e MySQL Material Livro: PHP e MySQL – Desenvolvimento Web"— Transcrição da apresentação:

1 PHP e MySQL Material Livro: PHP e MySQL – Desenvolvimento Web
Autores:Luke Welling, Laura Thomson Edição: Tradução da Terceira Edição Editora: Campus Prof. Everton Hipólito de Freitas

2 Capítulo I Utilizando o PHP

3 PHP e MySQL Introdução Para que aprender PHP e MySQL?
HTML é um desenvolvimento estático onde não permite interação entre site e usuário. PHP e MySQL lhe tornará apto a desenvolver páginas WEB dinâmicas. Personalizáveis Possuem informações em tempo real armazenadas no banco de dados MySQL.

4 PHP e MySQL Introdução O que é PHP?
É uma linguagem de criação de scripts do lado do servidor que foi projetada para Web. HTML e PHP juntos. O PHP será interpretado no servidor Web. PHP foi criado em 1994 por Rasmus Lerdorf. PHP é um produto de código aberto, ou seja, o usuário pode utilizá-lo, alterá-lo, distribuí-lo sem pagar nada. PHP (Personal Home Page). PHP também é conhecida como Hypertext Preprocessor. Uma linguagem de computador interpretada (também chamada linguagem de script) são linguagens de programação executadas em um interpretador. Por esse motivo, os scripts, que são as instruções formais escritas com as linguagens interpretadas, são diferentes de programas de computador; enquanto programas de computador são convertidos em formatos executáveis binários para serem usados, scripts mantém seu formato e são interpretados comando à comando cada vez que são executados.

5 PHP e MySQL Introdução Páginas de apoio a PHP www.php.net www.zend.com
Página oficial do PHP. Zend Technologies é a desenvolvedora comercial do PHP. Certificações

6 PHP e MySQL Introdução O que é MySQL?
É um sistema de gerenciamento de Banco de Dados (BD) relacional poderoso e muito rápido. Possui acesso múltiplos, ou seja, diversos usuários podem estar conectados ao banco ao mesmo tempo. O que pode ser feito em um BD? Armazenar informações Classificar e recuperar dados de forma eficiente. Atualizar e excluir informações, etc.

7 PHP e MySQL Introdução O que é MySQL?
Utiliza a linguagem SQL (Structured Query Language). SQL é uma linguagem padrão de consulta a banco de dados universal. MySQL está disponível em duas versões: Open Source (GPL – General Public License) Licença comercial para aplicativos comerciais que utilizam o MySQL. GNU General Public License (Licença Pública Geral), GNU GPL ou simplesmente GPL, é a designação da licença para software livre idealizada por Richard Stallman no final da década de 1980, no âmbito do projecto GNU da Free Software Foundation (FSF). A GPL é a licença com maior utilização por parte de projectos de software livre, em grande parte devido à sua adoção para o Linux. O software utilizado para administrar o conteúdo da Wikipédia é coberto por esta licença, na sua versão 2.0 ou superiores.

8 PHP e MySQL Introdução Porque utilizar PHP e MySQL?
Com PHP e MySQL o usuário poderá criar aplicações poderosas, multiplataformas (WEB), com controle de banco de dados eficiente e seguro.

9 PHP e MySQL Introdução Algo mais!!!!! O PHP se encontra na versão 5.
O PHP é gratuito. A sintaxe do PHP é baseado em outras linguagens de programação, principalmente C e Perl. PHP possui suporte a orientação a objetos. PHP está disponível para muitos sistemas operacionais. Linux FreeBSD Windows

10 PHP e MySQL Material Fonte Livro: PHP e MySQL – Desenvolvimento Web.
Capítulo: Introdução.

11 PHP e MySQL Utilizando o PHP Visão geral do PHP
O que é necessário para desenvolvermos aplicações em PHP? Servidor Web que interprete o PHP Será utilizado o servidor Apache 2.2.4 Download PHP 5.0 Download Como instalar o PHP e MySQL se encontra no final do livro que estamos usando. (Apêndice A)

12 PHP e MySQL Comunicação entre aplicações PHP.

13 PHP e MySQL Criando uma aplicação de exemplo. Figura 1.1

14 PHP e MySQL Conhecimento necessário(figura 1.1): Conhecer HTML
Texto simples Formulários Campos de formulário <input> Type: text <Select> Botão de envio Type: submit Atribuir nomes aos elementos do formulário para facilitar a manipulação das informações.

15 PHP e MySQL Procedimentos necessários (figura1.1)
Definir o Layout do seu site. Configurar a ação do formulário (action). Arquivo responsável por processar o pedido do cliente. Configurar o método de envio a ser utlizado (method) Get Será enviado como parte da url. Ex: Post Será enviado como um pacote separado contendo as informações pertencentes ao formulário.

16 PHP e MySQL Procedimentos necessários (figura1.1)
Dar nomes significativos aos elementos do formulário. No momento de trabalhar com estes campos, será mais fácil o desenvolvimento da aplicação se os nomes forem sugestivos.

17 PHP e MySQL Processando o formulário (figura1.1). Formulário vazio
Formulário preenchido

18 PHP e MySQL Processando o formulário (figura1.1). if( $totalqty == 0)
{ echo 'You did not order anything on the previous page!<br />'; } else if ( $tireqty>0 ) echo $tireqty.' tires<br />'; if ( $oilqty>0 ) echo $oilqty.' bottles of oil<br />'; if ( $sparkqty>0 ) echo $sparkqty.' spark plugs<br />'; $totalamount = 0.00; define('TIREPRICE', 100); define('OILPRICE', 10); define('SPARKPRICE', 4); $totalamount = $tireqty * TIREPRICE + $oilqty * OILPRICE + $sparkqty * SPARKPRICE; echo 'Subtotal: $'.number_format($totalamount,2).'<br />'; <?php // create short variable names $tireqty = $_POST['tireqty']; $oilqty = $_POST['oilqty']; $sparkqty = $_POST['sparkqty']; $find = $_POST['find']; ?> <html> <head> <title>Bob's Auto Parts - Order Results</title> </head> <body> <h1>Bob's Auto Parts</h1> <h2>Order Results</h2> echo '<p>Order processed at '; echo date('H:i, jS F'); echo '</p>'; echo '<p>Your order is as follows: </p>'; $totalqty = 0; $totalqty = $tireqty + $oilqty + $sparkqty; echo 'Items ordered: '.$totalqty.'<br />'; $taxrate = 0.10; // local sales tax is 10% $totalamount = $totalamount * (1 + $taxrate); echo 'Total including tax: $'. number_format($totalamount,2).'<br />'; if($find == 'a') echo '<p>Regular customer.</p>'; elseif($find == 'b') echo '<p>Customer referred by TV advert.</p>'; elseif($find == 'c') echo '<p>Customer referred by phone directory. </p>'; elseif($find == 'd') echo '<p>Customer referred by word of mouth. else echo '<p>We do not know how this customer found us.</p>'; ?> </body> </html>

19 PHP e MySQL Processando o formulário (figura1.1). OBS:
É possível códigos de PHP e HTML juntos. A página de resposta do servidor é enviada com códigos em HTML. Todos os códigos PHPs são processados no servidor Web, ou seja, o navegador do usuário não precisa entender sobre PHP. O javascript ao contrário do PHP pode ser interpretado no lado do cliente, e para isso o Browse (Internet Explorer) deverá interpretar códigos javascript.

20 PHP e MySQL Estilos de tags no PHP.
<? ... ?> <script language=‘php’> ... </script> <% ... %> Será adotado a tag <?php ...?> Atenção Os “...”(três pontos) usados a cima indica que neste espaço ocorreria comandos(instruções) da linguagem. Para ativar o estilo de tag desejado, leia no material de referência a página 07 e 08.

21 PHP e MySQL Instruções de PHP instruções
As instruções do PHP são inseridas entre as Tags <?php instruções ?> Instrução echo Imprime para o navegador a string passada a ela. echo ‘aula de php’; Todo final de instrução termina com ; (“ponto- virgula”); Esquecer de usar “;” no final da instrução é um erro de sintaxe.

22 PHP e MySQL Espaços em branco PHP ignora espaços em branco Ex:
echo ‘maria’; echo ‘joao’; E echo ‘maria’;echo ‘joao’; Resultado: mariajoao Lembre-se: para pular uma linha, o código utilizado é <br>.

23 PHP e MySQL Comentários São expressos por: # ou // /* */
Indica que a linha será comentada /* */ Indica que o bloco existente entre /* e */ é comentário.

24 PHP e MySQL Como chamar funções
Funções podem receber parâmetros, ou não. funcDados(); funcDados($teste,$nome); Funções podem retornar algum valor, ou não. $var1 = funcDados(); Usando a função date() Função pré-defina em Php que retorna uma data formatada. Ex: date(‘H:i, jS F’);

25 PHP e MySQL Acessando variáveis do formulário
O método de acesso a variável do formulário depende da versão do PHP que está utilizando e de configurações no arquivo php.ini O acesso as variáveis pode ser feito das seguintes formas: De maneira simples: $nomeVariavel; Através do método de envio post. $HTTP_POST_VARS[‘nomeVariavel’]; $_POST[‘nomeVariavel’]; Através do método de envio get. $_GET[‘nomeVariavel’]; Indiferente do método de envio $_REQUEST[‘nomeVariavel’];

26 PHP e MySQL Definição do método de acesso (formulário) POST
Envio dos campos do formulário é feito através de pacotes. GET Envio dos campos do formulário é feito através da url. O método POST é o mais utilizado devido ao limite de informações que podem ser enviadas.

27 PHP e MySQL Identificando variáveis do formulário (figura1.1).
if( $totalqty == 0) { echo 'You did not order anything on the previous page!<br />'; } else if ( $tireqty>0 ) echo $tireqty.' tires<br />'; if ( $oilqty>0 ) echo $oilqty.' bottles of oil<br />'; if ( $sparkqty>0 ) echo $sparkqty.' spark plugs<br />'; $totalamount = 0.00; define('TIREPRICE', 100); define('OILPRICE', 10); define('SPARKPRICE', 4); $totalamount = $tireqty * TIREPRICE + $oilqty * OILPRICE + $sparkqty * SPARKPRICE; echo 'Subtotal: $'.number_format($totalamount,2).'<br />'; <?php // create short variable names $tireqty = $_POST['tireqty']; $oilqty = $_POST['oilqty']; $sparkqty = $_POST['sparkqty']; $find = $_POST['find']; ?> <html> <head> <title>Bob's Auto Parts - Order Results</title> </head> <body> <h1>Bob's Auto Parts</h1> <h2>Order Results</h2> echo '<p>Order processed at '; echo date('H:i, jS F'); echo '</p>'; echo '<p>Your order is as follows: </p>'; $totalqty = 0; $totalqty = $tireqty + $oilqty + $sparkqty; echo 'Items ordered: '.$totalqty.'<br />'; $taxrate = 0.10; // local sales tax is 10% $totalamount = $totalamount * (1 + $taxrate); echo 'Total including tax: $'. number_format($totalamount,2).'<br />'; if($find == 'a') echo '<p>Regular customer.</p>'; elseif($find == 'b') echo '<p>Customer referred by TV advert.</p>'; elseif($find == 'c') echo '<p>Customer referred by phone directory. </p>'; elseif($find == 'd') echo '<p>Customer referred by word of mouth. else echo '<p>We do not know how this customer found us.</p>'; ?> </body> </html>

28 PHP e MySQL Manipulando o conteúdo das variáveis (figura1.1).
if( $totalqty == 0) { echo 'You did not order anything on the previous page!<br />'; } else if ( $tireqty>0 ) echo $tireqty.' tires<br />'; if ( $oilqty>0 ) echo $oilqty.' bottles of oil<br />'; if ( $sparkqty>0 ) echo $sparkqty.' spark plugs<br />'; $totalamount = 0.00; define('TIREPRICE', 100); define('OILPRICE', 10); define('SPARKPRICE', 4); $totalamount = $tireqty * TIREPRICE + $oilqty * OILPRICE + $sparkqty * SPARKPRICE; echo 'Subtotal: $'.number_format($totalamount,2).'<br />'; <?php // create short variable names $tireqty = $_POST['tireqty']; $oilqty = $_POST['oilqty']; $sparkqty = $_POST['sparkqty']; $find = $_POST['find']; ?> <html> <head> <title>Bob's Auto Parts - Order Results</title> </head> <body> <h1>Bob's Auto Parts</h1> <h2>Order Results</h2> echo '<p>Order processed at '; echo date('H:i, jS F'); echo '</p>'; echo '<p>Your order is as follows: </p>'; $totalqty = 0; $totalqty = $tireqty + $oilqty + $sparkqty; echo 'Items ordered: '.$totalqty.'<br />'; $taxrate = 0.10; // local sales tax is 10% $totalamount = $totalamount * (1 + $taxrate); echo 'Total including tax: $'. number_format($totalamount,2).'<br />'; if($find == 'a') echo '<p>Regular customer.</p>'; elseif($find == 'b') echo '<p>Customer referred by TV advert.</p>'; elseif($find == 'c') echo '<p>Customer referred by phone directory. </p>'; elseif($find == 'd') echo '<p>Customer referred by word of mouth. else echo '<p>We do not know how this customer found us.</p>'; ?> </body> </html>

29 PHP e MySQL Concatenação de strings.
Permite realizar a junção entre duas, ou mais strings. O símbolo que indica a concatenação de string é o “.”(ponto). echo “Meu nome é”.” Everton”; echo “Meu”.” nome é “.” Everton”; echo “Meu nome é ”.$nomeVar; echo $nomeVar.” é meu nome”; echo “Meu nome é <br>”.$nomeVar.” hipólito”;

30 PHP e MySQL Concatenando strings (figura1.1). if( $totalqty == 0)
{ echo 'You did not order anything on the previous page!<br />'; } else if ( $tireqty>0 ) echo $tireqty.' tires<br />'; if ( $oilqty>0 ) echo $oilqty.' bottles of oil<br />'; if ( $sparkqty>0 ) echo $sparkqty.' spark plugs<br />'; $totalamount = 0.00; define('TIREPRICE', 100); define('OILPRICE', 10); define('SPARKPRICE', 4); $totalamount = $tireqty * TIREPRICE + $oilqty * OILPRICE + $sparkqty * SPARKPRICE; echo 'Subtotal: $'.number_format($totalamount,2).'<br />'; <?php // create short variable names $tireqty = $_POST['tireqty']; $oilqty = $_POST['oilqty']; $sparkqty = $_POST['sparkqty']; $find = $_POST['find']; ?> <html> <head> <title>Bob's Auto Parts - Order Results</title> </head> <body> <h1>Bob's Auto Parts</h1> <h2>Order Results</h2> echo '<p>Order processed at '; echo date('H:i, jS F'); echo '</p>'; echo '<p>Your order is as follows: </p>'; $totalqty = 0; $totalqty = $tireqty + $oilqty + $sparkqty; echo 'Items ordered: '.$totalqty.'<br />'; $taxrate = 0.10; // local sales tax is 10% $totalamount = $totalamount * (1 + $taxrate); echo 'Total including tax: $'. number_format($totalamount,2).'<br />'; if($find == 'a') echo '<p>Regular customer.</p>'; elseif($find == 'b') echo '<p>Customer referred by TV advert.</p>'; elseif($find == 'c') echo '<p>Customer referred by phone directory. </p>'; elseif($find == 'd') echo '<p>Customer referred by word of mouth. else echo '<p>We do not know how this customer found us.</p>'; ?> </body> </html>

31 PHP e MySQL Exemplo prático(arquivo html)

32 PHP e MySQL Exemplo prático(arquivo php)

33 PHP e MySQL Exemplo prático(arquivo html)

34 PHP e MySQL Exemplo prático (arquivo php)

35 PHP e MySQL Variáveis e literais Variáveis começam com o símbolo $.
$teste = 10; $teste1 = ‘everton’; Literais são representados por ‘ ’ (aspas simples). $teste = ‘Declaracao’; echo ‘$teste de variáveis’; A instrução acima resulta em $teste de variáveis. echo “$teste de variáveis”; A instrução acima resulta em Declaração de variáveis.

36 PHP e MySQL Identificadores São nomes dados as variáveis.
Podem ser de qualquer comprimento. Podem consistir em letras, números, sublinhados e sinais de cifrão. Não podem iniciar com dígitos. São case sensitive (Maiúsculas <> Minúsculas)

37 PHP e MySQL Identificadores Variáveis não precisam de ser declaradas.
Simplesmente atribua valores a elas. $teste = 9; $nome = 1; $ab1212 = 3; A atribuição de valores a uma variável é feita através do símbolo = (igualdade). PHP é fracamente tipada.

38 PHP e MySQL Tipos de variáveis Integer Float (double) String Boolean
Array Objeto NULL *as variáveis que não foram inicializadas receberão como valor padrão NULL. <?php $nome; //veriavel definida como nula. ?>

39 PHP e MySQL Conversão do tipo
$var1 = 0; //variável definida do tipo inteiro $var2 = 0.00; //variável definida do tipo real Conversão simples $var2 = ‘string de texto’; //variavel redefinida como string Casting (coerção de tipos) $var1 = 0; $var2 = (double) $var1;

40 PHP e MySQL Declarando e usando constantes
Uma constante armazena um valor como uma variável, mas seu valor é configurado uma vez e não pode ser alterado em outras partes do script. Exemplo: define(‘preco’,100); echo preco; Observação: Constante não utiliza $. Constantes suportam boolean, integer, float, string. Nota:Constantes podem ser utilizadas quando se faz o uso de uma variável (a constante) por determinadas partes do código.

41 PHP e MySQL Escopo de variável
Variáveis super globais pré-definidas pelo PHP São visíveis por toda parte dentro de um script. Constantes São visíveis globalmente, ou seja, dentro de funções, em todo o script. Variáveis globais Quando declaradas dentro de um script, são visíveis por todo ele, exceto dentro de funções. Variáveis utilizadas dentro de funções que são declarados como globais reférem-se a variável global do mesmo nome. Variáveis declaradas dentro de funções como estática (static), são visíveis somente no escopo da função mas mantém seu valor entre as execuções. Variáveis declaradas dentro de funções são visíveis somente dentro da função.

42 PHP e MySQL /*DEFININDO ESCOPO DE VARIÁVEIS*/ define ('idade',27);
Exemplo <?php /*DEFININDO ESCOPO DE VARIÁVEIS*/ define ('idade',27); $nomeGlobal = 'Everton'; $sobreNome = 'Hipólito'; function showName(){ echo "Sobre nome: $sobreNome<br>"; global $nomeGlobal; echo "Nome: $nomeGlobal <br>"; echo "(Constante) ".idade." anos de idade.<br>"; return; } echo "******** Dados Pessoais ********** <br>"; echo "Chamando a função.<br>"; showName(); echo "Retorno ao programa principal."; ?>

43 PHP e MySQL Operadores $a=0; $b = 6 + ($a = 5) // resultado 11

44 PHP e MySQL Operadores de atribuição de combinação

45 PHP e MySQL Operadores de comparação

46 PHP e MySQL Operadores Lógicos

47 PHP e MySQL Operador Ternário É semelhante a operação if
(condition) ? <true> : <false>; Condition representa a condição a ser analisada. ? Se verdadeiro será executado o código que estiver aqui. : Se falso, será executado o código que estiver neste local. ($grade >= 50 ? ‘Passed’ : ‘Failed’)

48 PHP e MySQL (Pré e Pós) incremento e decremento Referência $a=2;
echo ++$a; //resultado 3(valerá 3) echo $a++; //resultado 2(valerá 3) Os exemplos acima servem para o caso de decremento. Referência Símbolo &(E comercial) $a= 5; $b = $a No exemplo acima é realizado uma cópia da variável $a para $b. Alterar $a ou $b não altera a variável oposta. $a = 8; $b = &$a; $b = 90; No exemplo acima, a alteração da variável b resulta em $a. As variáveis estão apontando para o mesmo local. Para perder o vínculo use unset($b);

49 PHP e MySQL Operador de supressão de erro
O é um operador que omite a ocorrência de alguns erros. Pode ser utilizado na frente de qualquer expressão, ou seja, qualquer coisa que gere um valor como resposta. <?php $x echo "Resultado:".$x; ?> $x = 34/0;

50 PHP e MySQL Operador de execução
O operador de execução é representado pelo simbolo `(acento grave, não é aspas simples) O operador de execução é utilizado para executar linhas de comando dentro do servidor onde se encontra o php. Exemplo <?php $dir = `dir *`; echo "Diretório: $dir"; ?>

51 PHP e MySQL Operadores array $vetor = array(1,2,3,4,5)

52 PHP e MySQL Usando funções de variáveis
São funçoes que permitam tratar conteúdos de variáveis. gettype(var) Retorna o tipo da variável. Ex: integer,double(para float),boolean, string, array, etc... $name = 12; Echo gettype($name); //retornará integer Settype(var,string) Converte a variável para o tipo específico. Ex: $name = 15; Settype($name,’double’);

53 PHP e MySQL Usando funções de variáveis is_array(var)
Retorna verdadeiro se a variável informada for um array(vetor). Is_double(var), is_float(var), is_real(var) Retorna verdadeiro se a variável informada contiver um valor do tipo real. Is_long(var), is_int(var),is_integer(var) Retorna verdadeiro se a variável informada contiver um valor do tipo inteiro. Is_string(var) Retorna verdadeiro se a variável informada contiver um valor do tipo string; is_null(var) Retorna verdadeiro se a variável informada contiver um valor nulo. Is_numeric(var) Retorna verdadeiro se a variável informada contiver um valor numérico.

54 PHP e MySQL ... <body> <?php $v1=12; $v2='abc'; $v3=12.5;
Usando funções de variáveis (exemplo ex2) ... <body> <?php $v1=12; $v2='abc'; $v3=12.5; $v4= array(1,2,3); $v5=true; echo "is_integer($v1):".is_integer($v1); echo "<br>is_integer($v2):".is_integer($v2); echo "<br> is_float($v3):".is_float($v3); echo "<br> is_float($v3):".is_float($v1); echo "<br> is_string($v2):".is_string($v2); echo "<br> is_string($v2):".is_string($v1); echo "<br> is_numeric($v1):".is_numeric($v1); echo "<br> is_numeric($v1):".is_numeric($v5); echo "<br> is_array($v4):".is_array($v4); echo "<br> is_array($v4):".is_array($v5); if(is_integer($v1)==true){ echo "<br> <center> O valor da variavel v1($v1) é um valor inteiro.<center>"; } ?>

55 PHP e MySQL Usando funções de variáveis Isset(var) Unset(var)
Retorna true caso a variável exista, ou seja, tenha sido declarada. Unset(var) Essa função elimina a variável passada como parâmetro.

56 PHP e MySQL Usando funções de variáveis if(isset($name)==true){
echo "<br>A variável name existe"; }else{ echo "<br>A variável name nao existe"; } $name = "Unipac"; unset($name);

57 PHP e MySQL Usando funções de variáveis Intval(var) Doubleval(var)
Pega o valor inteiro de uma expressão. <?php echo intval(42);                      // 42 echo intval(4.2);                     // 4 echo intval('42');                    // 42 ?> Doubleval(var) Pega o valor real de uma variável. <?php $var = ' The'; $float_value_of_var = floatval($var); echo $float_value_of_var; //  ?>

58 PHP e MySQL Função empty(<var>)
Verifica se o conteúdo de uma variável é vazia. Valor de retorno é true se vazia e false se preenchida. $a = ‘agora’; If(empty($a)){ ..... Se estiver vazia }else{ ....se não estiver vazia }

59 PHP e MySQL Loops While É o laço de repetições que tem como objetivo executar um bloco de instruções inúmeras vezes de acordo com sua condição. É utilizado quando não se sabe a condição de parada. $num = 1; while ($num <= 5 ) { echo $num.”<br />”; $num++; }

60 PHP e MySQL Loops While Exemplo prático. <html > <head>
<meta http-equiv="Content-Type" content="text/html; charset=iso " /> <title>Untitled Document</title> </head> <body> <?php $num = 1; while($num < 50){ echo "<b> $num </b><br>"; $num++; } ?> </body> </html>

61 PHP e MySQL Loops For e Foreach O laço for é um laço mais compacto.
É utilizado quando se conhece o número de execuções. Exemplo For($distancia=1; $distancia < 50; $distancia++){ echo “<br> $distancia”; }

62 PHP e MySQL Loops For e Foreach
O laço Foreach é utilizado para trabalhar com arrays. A idéia é executar inúmeras vezes, de acordo com o número de posições encontradas em um array. Sintaxe foreach (array_expression as $value) statement OU foreach (array_expression as $key => $value) statement

63 PHP e MySQL Loops For e Foreach Exemplo <?php
$arr = array(1, 2, 3, 4); foreach ($arr as $value) { echo "$value "; } // $arr is now array(2, 4, 6, 8) unset($value); // break the reference with the last element ?>

64 PHP e MySQL Loops Do...while
O laço do..while diferencia do laço while devido ao fato de que a condição é feita no final do laço, sendo assim, temos a garantia que o laço se executará ao menos uma vez. Exemplo <?php $i = 10; do {     echo $i; $i--; } while ($i > 0); ?>

65 PHP e MySQL Bloco de códigos If(<condição>){
...se verdadeiro a condição } If(<condicao>){ }else{ ...se falso a condição }elseif(<condicao1>){ ...se verdadeiro a condição1 e falso condicao ...se falso a condição e condicao1

66 PHP e MySQL Instruções switch()
É uma instrução parecida com o if, mas permite a seleção de opções. switch($find) { case ‘a’ : echo ‘<p>Regular customer.</p>’;break; case ‘b’ : echo ‘<p>Customer referred by TV advert.</p>’; break; case ‘c’ : echo ‘<p>Customer referred by phone directory.</p>’; case ‘d’ : echo ‘<p>Customer referred by word of mouth.</p>’; default : echo ‘<p>We do not know how this customer found us.</p>’; }

67 PHP e MySQL Observações sobre Is_int(),is_float().
Todos os campos do formulário são do tipo string. Para verificar se um determinado conteúdo é inteiro ou float, deverá fazer a conversão primeiro e depois a verificação. Exemplo $_post[‘idade’]; //é um campo vindo do formulário If(is_int((int)$_post[‘idade’]) == true) Echo “É um avlor inteiro.”; Else Echo “não é um valor inteiro.”;

68 PHP e MySQL Terminando a execução de um script. Exit
O comando exit tem como finalidade de interromper a execução do script que o contém. Exemplo If($name == “everton”){ Echo “saindo do sistema”; exit }

69 Capítulo II Armazenando e recuperando dados

70 Armazenando e recuperando dados
Agenda Salvar dados Abrir um arquivo Criar e gravar Fechar Ler Bloquear Excluir

71 Armazenando e recuperando dados
Visão geral Gravando dados em arquivos Abrir arquivo Se o arquivo não existir ainda, o mesmo deverá ser criado. Gravar os dados no arquivo Fechar o arquivo Ler dados de um arquivo Caso o arquivo não exista, ou não possa ser aberto, exibir uma mensagem elegante. Ler dados a partir do arquivo

72 Armazenando e recuperando dados
Abrindo um arquivo Função fopen() Retorna false quando falha a abertura de um arquivo. Caso contrário, retorna o ponteiro do arquivo aberto. Function fopen(localArquivo,tipoOperacao) localArquivo indica o diretorio onde se encontra o arquivo a ser aberto tipoOperacao indica se o arquivo será aberto para leitura, ou escrita, ou ambos, etc... Ex: $arq=fopen($_SERVER['DOCUMENT_ROOT'].”exemplo/arquivo.txt”,w); $_SERVER['DOCUMENT_ROOT'] indica o endereço raiz de onde se encontra todas as aplicações desenvolvidas. Cuidado ao usar a /(barra) para indicar diretórios, pois ocorre uma pequena alteração quando relacionada a windows e linux.

73 Armazenando e recuperando dados

74 Armazenando e recuperando dados
Gravando em um arquivo Função frwite(ponteiroArquivo,variavelConteudo) Função fputs(); //fputs é um Alias para fwrite ponteiroArquivo indica a variável que aponta para o ponteiro retornado por pela função fopen. $arq=fopen($_SERVER['DOCUMENT_ROOT'].”exemplo/arquivo.txt”,w); fwrite($arq,”Php e Mysql”); A estrutura a ser armazenada no arquivo depende da estrutura definida pela aplicação. Um terceiro parâmetro (opcional) pode ser utilizado para indicar o tamanho de bytes a serem gravados.

75 Armazenando e recuperando dados
Fechando um arquivo Função fclose(ponteiroArquivo) ponteiroArquivo indica o ponteiro que está referenciando para o arquivo aberto. Quando o arquivo é fechado corretamente, a função retorna o valor true, caso contrário retorna false; $arq=fopen($_SERVER['DOCUMENT_ROOT'].”exemplo/arquivo.txt”,w); fwrite($arq,”Php e Mysql”); fclose($arq);

76 Armazenando e recuperando dados
Lendo de um arquivo Function fgets(ponteiroArquivo,tamanhoLeitura) ponteiroArquivo indica o ponteiro que está referenciando para o arquivo aberto. $arq=fopen($_SERVER['DOCUMENT_ROOT'].”exemplo/arquivo.txt”,w); $text = fgets($arq,999); fclose($arq); Function feof(ponteiroArquivo) Indica se chegou ao final do arquivo Retorna true se alcançou o final do arquivo, caso contrário retorna false. If(feof($arq) == true) echo “Final de arquivo”; Else echo “Contem registros.”;

77 Armazenando e recuperando dados
Lendo todo um arquivo, linha por linha $arq=fopen($_SERVER['DOCUMENT_ROOT'].”exemplo/arquivo.txt”,w); While(feof(arq) == false){ $text = fgets($arq,999); echo $text; } fclose($arq);

78 Armazenando e recuperando dados
Lendo todo um arquivo inteiro Function readfile(localArquivo) localArquivo indica o local onde se encontra o arquivo que será lido $arq=readfile($_SERVER['DOCUMENT_ROOT'].”exemplo/arquivo.txt”);

79 Capítulo III Utilizando Arrays

80 PHP e MySQL Array Um array é uma variável que armazena um conjunto ou seqüência de valores. Um array em Php pode ter muitos elementos, e cada elemento armazenar diversos valores como: texto, números, ou outro array. Em php o array pode ser associativo ou numericamente indexado. Associativo (“one”=>12, “dois”=> ) Indexado (1=>’a’,2=>’b’, 3=>12,...) Mixado (1=>2.5,’nome’=>’Everton’)

81 PHP e MySQL Array numericamente indexado
Exemplo $produto = array(‘everton’,’hipolito’,’freitas’); $numeros = range(1,10) Cria um array com uma sequencia de números de 1 a 10. Acessando o conteúdo de um array Acesse através do nome da variável e seu índice. $produto[0] //obtem elemento zero do array Echo $produto[0]; Alterando o conteúdo de uma posição do array. Utilize o operador = . $produto[1]=“Joao”; //altera a posição 1 do array produtos para joao. Echo $produto[1];

82 PHP e MySQL Alternativa para se criar um array
$produto[0]=‘everton’ $produto[1] = ‘hipolito’ $produto[2]= ’freitas’; Observação O array é redimensionado dinamicamente a medida que se adiciona posições a ele. Acessando array através de loops For($i=0;$i<3;$i++){ Echo $produto[$i]; } OU Foreach ($produtos as $variavel){ echo $variavel;

83 PHP e MySQL Array com diferentes índices
O php suporta arrays em que podemos associar qualquer chave ou índice. Inicializando um array $produtos = array(‘one’=> 12, ‘maria’=>34, ‘joao’=>25); Sintaxe Apresenta-se o nome da chave seguido do sinal =>, e a seguir especifica o valor do campo. Acessando o conteúdo do array Echo $produto[‘joao’]; Echo $produto[‘one’]

84 PHP e MySQL Formas de criar Array com diferentes índices
$produtos = array(‘one’=> 12); $produtos[‘joao’] = 34; $produtos[‘maria’] = 56; Usando loops para exibir o conteúdo do array. Foreach ($produtos as $temp){ Echo $temp } OU Foreach ($produtos as $Chave => $Valores){ Echo $Chave.” tem o conteúdo “. $Valores; While( $elemento = each($produtos)){ echo $elemento[‘key’]; echo $elemento[‘value’];

85 PHP e MySQL Foreach ($produtos as $temp){ }
Echo $temp } OBTEM O CONTEÚDO DO ARRAY E ARMAZENA-O NA VARIÁVEL $TEMP EM CADA EXECUÇÃO DO LAÇO FOREACH. Foreach ($produtos as $Chave => $Valores){ Echo $Chave.” tem o conteúdo “. $Valores; OBTEM A CHAVE DO ARRAY $PRODUTOS E ARMAZENA NA VARIÁVEL $CHAVE. OBTEM O CONTEÚDO DO ARRAY $PRODUTOS E ARMAZENA-O NA VARIÁVEL $VALORES EM CADA EXECUÇÃO DO LAÇO FOREACH. While( $elemento = each($produtos)){ echo $elemento[‘key’]; echo $elemento[‘value’]; A FUNÇÃO EACH() RETORNA PARA A VARIAVEL $ELEMENTO UM ARRAY ONDE NA POSIÇÃO ‘KEY’ CONTÉM A CHAVE DO ARRAY $PRODUTOS, E NA POSIÇÃO ‘VALUE’ CONTÉM O CONTEÚDO DO ARRAY $PRODUTOS.

86 PHP e MySQL Operadores de array

87 PHP e MySQL Array Multidimensionais
Podemos criar array multidimensionais. Exemplos $valores=array(array(1,2,3), array(4,5,6)); Valores é composto por 2 linhas e 3 colunas. $Valores[0][0] //contem o valor 1 $Valores[0][1] //contem o valor 2 $Valores[0][2] //contem o valor 3 $Valores[1][0] //contem o valor 4 $Valores[1][1] //contem o valor 5 $Valores[1][2] //contem o valor 6

88 PHP e MySQL Array Multidimensionais Exemplos
$valores=array(array(“everton”,26), array(“joao”, 32)); Valores é composto por 2 linhas e 3 colunas. $Valores[0][0] //contem o valor Everton $Valores[0][1] //contem o valor 26 $Valores[1][0] //contem o valor Joao $Valores[1][1] //contem o valor 32

89 PHP e MySQL Array Multidimensionais Exibindo um único valor do vetor
Percorrendo o vetor através de laços. $valores=array(array(1,2,3), array(4,5,6)); for($i=0;$i<2;$i++){ for($j=0;$j<3;$j++){ echo $valores[$i][$j].”<br>”; } Exibindo um único valor do vetor Echo $valores[0][2];

90 PHP e MySQL Classificando arrays
Funções utilizadas para classificação de arrays. Classificação crescente Sort() Asort() Ksort() Classificação decrescente Rsort() Arsort() Krsort()

91 PHP e MySQL Classificando arrays Sort(<var_array>)
A função sort() é utilizada para array com chaves numéricas. sort() classifica o array em ordem crescente. Exemplo $a = Array(1,4,5,2,7); $b = sort($a); $b estará ordenado por ordem crescente, ou seja, conterá os seguintes valores: 1,2,4,5,7.

92 PHP e MySQL Classificando arrays Ksort(<var_array>)
A função asort() é utilizada para ordenar array com chaves descritivas. A função asort() ordena o array de acordo com o valor de cada elemento.

93 PHP e MySQL Classificando arrays Ksort(<var_array>)
A função ksort() é utilizada para ordenar array com chaves descritivas. A função asort() ordena o array de acordo com o valor de cada chave(ou seja, índice). $a = Array(’b’=>1,‘a’=>5,’c’=>4); $b = ksort($a); $b estará ordenado por ordem crescente, ou seja, conterá os seguintes valores: [‘a’=>5,’b’=>1 , ’c’=>4]

94 PHP e MySQL Classificando arrays
A classificação pode ser feita de forma decrescente, para isso o funcionamento da função é o mesmo, porém, de forma decrescente. As funções são: Rsort() Arsort() Krsort()

95 PHP e MySQL Descobrindo o tamanho de um array Sizeof(var_array)
Retorna o número de elementos em um array. $a = array(1,2,3,4,5,6,7,8,9); Echo sizeof($a); //resultado 9 (indica 9 elementos)

96 PHP e MySQL Outras funções para manipulação de array poderá ser encontrado em: Capítulo 3 do livro. PHP e MySql Desenvolvimento Web Luke Welling Laura Thonson

97 Capítulo 4 Manipulação de String e Expressões regulares
Objetivo: aprender a formatar e manipular textos em strings. Neste capítulo será utilizado Funções de String pré-definidas e Expressões Regulares

98 Tópicos Formatando strings
Juntando (concatenando strings) e separando strings Comparando strings Alterando strings com funções de string Usando expressão regular

99 Formatando strings Função mail() Protótipo
bool mail(string to, string subject, string message, string [additional_headers [, string additional_parameters]]); to – string que representa o do destinatário. subject – indica o assunto do . message – indica a mensagem que será enviada. additional_headers e additional_parameters– são informações extra tais como: from, reply-to, etc...

100 PHP e MySQL Formatando Strings Ltrim (Ltrim), rtrim e trim
ltrim(string) remove os espaços em branco no inicio de uma string. Exemplo $nome=“ Everton Hipólito de Freitas ”; Echo ltrim($nome);//“Everton Hipólito de Freitas ” Rtrim ou chop(string) remove os espaços em branco no final de uma string. Echo ltrim($nome);//“ Everton Hipólito de Freitas” trim(string) remove os espaços em branco do início e final de uma string.

101 PHP e MySQL Formatando Strings nl2br() Printf
Substitui uma string que contenha quebra de linha (\n) por um <br>. Exemplo $name = “Everton \n Hipólito”; echo nl2br($name); Resultado: Everton Hipólito Printf Exibe uma string formatada no browser. Sintaxe Printf(“<textos e caracteres especiais>”, <variaveis>); Tipos de caracteres especiais mais usados c  imprime um caractere. d  imprime um valor inteiro. f  imprime um valor float. s  imprime uma string. $f=15.0 *5; Printf(“Valor total: R$ %.2f”,$f); $mi=1452; $mf=5677; Printf(“Numero matricula: %d - %d”,$mi,$mf);

102 PHP e MySQL Formatando Strings sprintf Retorna uma string formatada.
Sintaxe $var = sprintf(“%2.f”, ); Tipos de caracteres especiais mais usados c  imprime um caractere. d  imprime um valor inteiro. f  imprime um valor float. s  imprime uma string. Exemplo $num = ; echo "Total: $num<br>"; printf("Total: %.2f <br>",$num); $var = sprintf("Total %.2f",$num); echo $var;

103 PHP e MySQL Formatando Strings strtoUpper(string) strtolower(string)
Converte uma string para maiúscula. Exemplo $nome = “unipac araguari”; Echo strtoupper($nome);// mostra UNIPAC ARAGUARI strtolower(string) Converte uma string para minúscula. Echo strtolower($nome);// mostra unipac araguari ucfirst(string) Passa o primeiro caracter de uma string para Maiúculo. Echo ucfirst($nome);// mostra Unipac Araguari ucword(string) Passa o primeiro caracter de cada palavra de uma string determinada para Maiúculo. Echo ucword($nome);// mostra Unipac Araguari

104 PHP e MySQL Formatando Strings
Formatando strings para armazenamento em Banco de dados. É utilizado para reformatar strings que serão armazenadas em banco de dados. Alguns SGBD podem interpretar caracteres de uma string como caracteres especiais (caracteres de controle), por exemplo, uma string “everto\n”. Os principais são ‘, “, \ e NULL. (São caracteres utilizados para controle dos SGBDs). Para solucionar este problema temos 2 alternativas: A primeira alternativa é adicionar uma (\ - barra) antes do caracter especial. Exemplo: $var = "Hoje é \"segunda-feira\""; echo $var; A segunda alternativa é usar as funções addslashes() and stripslashes().

105 PHP e MySQL Formatando Strings addslashes() and stripslashes().
Utilizada para formatar uma string para o banco de dados Stripslashes Utilizada para fazer o processo contrário da função anterior. $var="hoje é 'quinta feira"; $var = addslashes($var); echo $var; // hoje é \’quinta feira $var = stripslashes($var); echo $var; // hoje é ’quinta feira

106 PHP e MySQL Manipulação de strings
As funções a seguir são utilizadas para manipulação de strings. explode, implode() e join() explode() Quebra uma string em partes de acordo com um caracter separador. Protótipo array explode(string separator, string input [, int limit]); Exemplo $teste = $ teste = Resultado $teste[0]; //everton $teste[1]; //ufu.com.br

107 PHP e MySQL Manipulação de strings
As funções a seguir são utilizadas para manipulação de strings. implode() ou join() Reverso do implode. Junção de um conjunto de valores unidos por um caracter pré-definido. Protótipo string implode(string union, array input); string join(string union, array input); Exemplo $teste = $teste = $var = $teste); echo $var;

108 PHP e MySQL Manipulação de strings
As funções a seguir são utilizadas para manipulação de strings. Strtok() É similar ao explode, difere na maneira de obter as partes de uma string. strtok obtém parte-por-parte de uma string, ao invés de quebrá-la de uma só vez. Protótipo string strtok(string input, string separator); Exemplo $feedback="Everton hipólito de freitas"; $token = strtok($feedback, ' '); echo $token.'<br />'; while ($token!='') { $token = strtok(' '); echo $token.'<br/>'; };

109 PHP e MySQL Formatando Strings substr()
Retorna uma parte de uma string qualquer. Sintaxe <string> substr(<string>,ponto Inicial,comprimento); OBS: - quando o comprimento não é especificado, será retornado a string do ponto inicial ao ponto final. - se especifica um valor negativo no ponto inicial e omitido o comprimento, será retornado os n(sendo n o valor especificado no ponto inicial) ultimos caracteres (substr($var,-5)). Exemplo $name = “everton hipolito”; $name1 = substr($name,2,7); Echo $name1;//mostra erton h

110 PHP e MySQL Formatando Strings strcmp(string1 , string2)
Realiza a comparação entre duas strings. Retorna 0 se forem iguais Se string1 for maior que string2 lexicograficamente, será retornado um valor maior que zero. Se string2 for maior que string1 lexicograficamente, será retornado um valor menor que zero. Diferencia palavras maiúsculas de minúsculas. strcasecmp(string1 , string2) Realiza a mesma coisa que strcmp exceto, que não diferencia palavras maiúsculas de minúsculas.

111 PHP e MySQL Formatando Strings strcmp(string1 , string2)
Realiza a comparação entre duas strings. Retorna 0 se forem iguais Se string1 for maior que string2 lexicograficamente, será retornado um valor maior que zero. Se string2 for maior que string1 lexicograficamente, será retornado um valor menor que zero. Diferencia palavras maiúsculas de minúsculas. Exemplos strcmp("abc",“abc"); //retorna 0 strcmp(“bbc",“abc"); //retorna maior que zero strcmp(“abc",“bbc"); //retorna menor que zero strcasecmp(string1 , string2) Realiza a mesma coisa que strcmp exceto, que não diferencia palavras maiúsculas de minúsculas. strcmp("abc",“Abc"); //retorna 0 strcmp(“Abc",“abc"); //retorna 0

112 PHP e MySQL Formatando Strings strlen()
Retorna o comprimento de uma string. Conta o número de caracteres que ela possui. Sintaxe Int strlen(string) Exemplo $name = ‘unipac’; Echo strlen($name); // exibe 6

113 PHP e MySQL Padrões e substituição de parte de string
Funções de manipulação de string Procurando strings dentro de strings strstr() ou strchr(), strrchr(), and stristr() strstr() ou strchr() é utilizada para procurar uma string, ou um caracter, dentro de uma outra string. Protótipo string strstr(string haystack, string needle); //OBS: case-sensitive Haystack- é a string na qual será procurada. Needle- é a string procurada. A função retorna uma string que se inicia na primeira ocorrencia da string de busca. $toaddress = // the default value // Change the $toaddress if the criteria are met if (strstr($feedback, ‘shop’)) $toaddress = else if (strstr($feedback, ‘delivery’)) $toaddress = else if (strstr($feedback, ‘bill’)) // o retorno será $toaddress =

114 PHP e MySQL Padrões e substituição de parte de string
Funções de manipulação de string Procurando strings dentro de strings stristr() É similar ao strstr(), o que diferencia é que não é case-sensitive. strrchr() É similar ao strstr(), o que o difere é que será retornado uma string que inicia na ultima ocorrencia da string pesquisada. $t = "UNIPAC ARAGUARI - CAMPUS X"; echo strrchr($t,'I');// I - CAMPUS X

115 PHP e MySQL Padrões e substituição de parte de string
Funções de manipulação de string Procurando posições dentro de uma string. As funções a seguir são utilizadas para retornar as posições onde se encontram as strings pesquisadas. strpos() and strrpos() É similiar a função strstr(), exceto que elas retornam a posição numérica da string pesquisada. int strpos(string haystack, string needle, int [offset] ); Haystack – string na qual será procurada (palheiro) Needle – string a ser procurada (agulha) offset - posição inicial da busca. $test = ‘Hello world’; echo strpos($test, ‘o’); // imprime o valor 4 echo strpos($test, ‘o’,5); // imprime o valor 7

116 PHP e MySQL Padrões e substituição de parte de string
Funções de manipulação de string Procurando posições dentro de uma string. As funções a seguir são utilizadas para retornar as posições onde se encontram as strings pesquisadas. strrpos() É similiar a função strpos(), exceto que ela retorna a posição numérica da ultima ocorrência da string pesquisada. int strrpos(string haystack, string needle, int [offset] ); Haystack – string na qual será procurada (palheiro) Needle – string a ser procurada (agulha) offset - posição inicial da busca. $test = ‘Hello world’; echo strrpos($test, ‘o’); // imprime o valor 7

117 PHP e MySQL Padrões e substituição de parte de string
Funções de manipulação de string Substituindo parte de uma string str_replace() and substr_replace() Essas funções são utilizadas para substituir parte de uma string por uma outra string especificada. mixed str_replace(mixed needle, mixed new_needle, mixed haystack[, int &count])); needle – a string procurada (agulha) new_ needle – a nova string (needle será substituída por esta string) haytack – string que será realizada a busca. Count – deverá ser especificado uma variável que receberá a quantidade de substituições feitas. A função retorna a nova string com as substituições.

118 PHP e MySQL Padrões e substituição de parte de string
Funções de manipulação de string Substituindo parte de uma string str_replace() Exemplo $ = $ 1 = str_replace("<domain>","bol", $ ); echo $ 1."<br>"; //

119 PHP e MySQL Padrões e substituição de parte de string
Funções de manipulação de string Substituindo parte de uma string substr_replace() string substr_replace(string string, string replacement, int start, int [length] ); String – é a string que será utilizada como base na procura. Replacement – string utilizada na substituição. Start – ponto de início da substituição Length – quantidade de caracteres que serão substituídos pelo Replacement .

120 PHP e MySQL Padrões e substituição de parte de string
Funções de manipulação de string Substituindo parte de uma string substr_replace() Exemplo $b="AMANHA EU IREI A FACULDADE"; echo substr_replace($b, 'NHA',1,2); Resultado //ANHANHA EU IREI A FACULDADE

121 PHP e MySQL Trabalho Desenvolva uma pesquisa sobre “Expressões regulares” (Final capítulo 4) em php e “Reutilizando códigos e escrevendo funções”(Capítulo 5). Trabalho escrito descrevendo os conceitos. Exemplos práticos que apresente o conceito adquirido. Apresentação para o professor e os alunos. Será selecionado um grupo para apresentar e perguntas serão feitas ao restante da turma e apresentação individual ao professor. Material utilizado será um data-show. Trabalho em grupo de 3 pessoas. Data apresentação: 20/05/2009. Valor: 7 pontos

122 PHP e MySQL Maiores informações sobre string Livro http://www.php.net
Capítulo 4 Livro PhP e Mysql Desenvolvimento Web

123 Capítulo 5 Reutilizando códigos e escrevendo funções.
Objetivo: Este capítulo apresentará a reutilização de códigos permitindo a criação de páginas com menos esforços. Serão abordadas as funções require e include, bem como as funções desenvolvidas pelo programador.


Carregar ppt "PHP e MySQL Material Livro: PHP e MySQL – Desenvolvimento Web"

Apresentações semelhantes


Anúncios Google