37
José Francisco [[email protected]] PHP & MySQL

PHP & MySQL

  • Upload
    rusty

  • View
    45

  • Download
    2

Embed Size (px)

DESCRIPTION

PHP & MySQL. José Francisco [[email protected]]. Os slides originais são parte do material de cursos anteriores do curso de PHP, ministrados por Sérgio Clemente. Com modificações! Também possui a contribuição de Cleviton V. F. Monteiro. - PowerPoint PPT Presentation

Citation preview

Page 1: PHP & MySQL

José Francisco [[email protected]]

PHP & MySQL

Page 2: PHP & MySQL

Os slides originais são parte do material de cursos anteriores do curso de PHP, ministrados por Sérgio Clemente. Com modificações!

Também possui a contribuição de Cleviton V. F. Monteiro.Conteúdo didático é baseado em diversas fontes como: tutoriais, livros e o site oficial

de PHP.Inspirado também em slides de Jobson Ronan, instrutor de Java Avançado do CITi.

Page 3: PHP & MySQL

Roteiro

Variáveis Tipos Arrays Resource

Page 4: PHP & MySQL

Variáveis

Um espaço na memória para armazenar dados São case sensitive.

i.e. $nome e $Nome são diferentes. Começam com $ podem conter letras digitos e

sublinhados O primeiro caractere não pode ser um número.

Page 5: PHP & MySQL

Regras de Nomenclatura

O primeiro caractere é uma letra ou um sublinhado ‘_’.

O nome só pode conter caracteres alfa-numéricos e sublinhados (a-Z, 0-9, _ )

Nome que contenham mais de uma palavra deve-se separar as palavras por um sublinhado ou por letra maiúscula. $nome_cliente ou $nomeCliente

Page 6: PHP & MySQL

Variáveis

$idade $_nome $i $3idade $primeiro-nome

Em PHP não é necessário declarar o tipo de uma variável antes de usá-la (Tipagem Dinâmica).

<?php     $str = "José"; // $str armazena o tipo string.     $i = 12; // $i armazena o tipo inteiro.     $f = 3.1415; // $f armazena o tipo ponto flutuante.    $v = “3.1415"; // $v armazena o tipo string. ?>

Page 7: PHP & MySQL

VariáveisTipo Descrição

Inteiro Um inteiro é um número do conjunto Z = {..., -2, -1, 0, 1, 2, ...}.

Pontos Flutuante Números reais, como 4.12

Strings Seqüência de caracteresBooleano Um booleano expressa um valor de verdade. Ele

pode ser TRUE ou FALSE. Array Representa coleçõesObjetos Instancias de classes definidas.Resource Representa um recurso externo.NULL Representa uma variável sem valor.

Page 8: PHP & MySQL

Inteiro

Representam os números inteiros da matemática Variam de -2.147.483.648 à 2.147.483.647

OBS: Caso ocorra overflow o Número de Ponto Flutuante é retornado.

<?php     $a = 1; # número decimal     $a = -2; # um número negativo     $a = 0123; # número octal (83 em decimal)     $a = 0xF; # número hexadecimal (15 em decimal)     $a = 7*12 + 6/3; # saída: 86 ?>

Page 9: PHP & MySQL

Pontos Flutuantes

Possuem uma parte inteira e uma parte fracionária. O tamanho depende da plataforma.

Cuidado o seguinte Script gera a saída 1.

<?php     $a = 1.234;     $b = 1.2e3;     $c = 7E-10; ?>

<?php floor((0.1+0.7)*10) == 7 ?>

Page 10: PHP & MySQL

Strings

(1 byte por caractere): Não suporta diretamente unicode.

Podem ser delimitadas por “” (aspas duplas), ‘’ (aspas simples) ou por `` (grave).

Cada uma das delimitações tem um propósito específico.

Page 11: PHP & MySQL

Strings

Delimitado por aspas simples ‘’ Variáveis internas não são expandidas.

<?php     $id = 12;     $query = ‘SELECT * FROM FUNCIONARIO WHERE ID=$id’;     echo($query); ?>

SELECT * FROM FUNCIONARIO WHERE ID=$id

Saída

Page 12: PHP & MySQL

Strings

Delimitadas por aspas duplas “” As variáveis externas são expandidas.

<?php     $id = 12;     $query = "SELECT * FROM FUNCIONARIO WHERE ID=$id";     echo($query); ?>

SELECT * FROM FUNCIONARIO WHERE ID=12

Saída

Page 13: PHP & MySQL

Strings Delimitadas por `` (acentos grave)

Executa o conteúdo como um comando do shell e retorna sua saída.

<?php     $a = `time`;          echo $a; ?>

Hora atual: 16:00:57,61 Digite a nova hora:

Saida:

Page 14: PHP & MySQL

Strings

Seqüência Significado “ ‘

\n Nova linha OK ERRO\r Retorno de carro OK ERRO\t Tab horizontal OK ERRO\\ Barra invertida OK ERRO\$ Cifrão OK ERRO\’ Aspas simples ERRO OK\” Aspas duplas OK ERRO

Caracteres especiais para string

Page 15: PHP & MySQL

Exercícios

Faça os exercícios 4 e 5

Page 16: PHP & MySQL

Seqüência de caracteres. Acessando um caractere da string. Coloca-se entre chaves o índice do caractere desejado

(começando em 0).

Strings

<?php      $str = "abc";      echo $str{1};      echo "<br>";      $str{1} = '2';      echo $str; ?>

ba2c

Saída gerada:

Page 17: PHP & MySQL

Strings

Concatenação de Strings.

<?php     $str1 = "ab";     $str2 = "c";     $concat = $str1 . $str2; ?>

Page 18: PHP & MySQL

Strings

Conversão de strings em inteiros Tenta converter da esquerda para a direita, se não

conseguir evolui para 0.

<?php     $foo = 1 + "10.5";       // $foo é float (11.5)     $foo = 1 + "-1.3e3";    // $foo é float (-1299)     $foo = 1 + "bob-1.3e3";  // $foo é integer (1)     $foo = 1 + "bob3";          // $foo é integer (1)     $foo = 1 + "10 Small Pigs";   // $foo é integer (11)     $foo = 4 + "10.2 Little Piggies"; //$foo é float(14.2)

    $foo = "10.0 pigs " + 1;     // $foo é float (11) ?>

Page 19: PHP & MySQL

Booleano Representam os conceitos de verdadeiro e falso. Use as palavras chave TRUE ou FALSE. Ambas são

insensitivas ao caso. <?php     $foo = True; // assimila o valor TRUE para $foo ?>

OBS: Assim como na linguagem C, em php o 0 é denotado para falso e true para qualquer numero diferente de 0. Portanto:$b1 = -1; //true$b2 = 0; //false$b3 = 2; // true

Page 20: PHP & MySQL

Booleano Normalmente utilizado em estruturas de controle

junto com os operadores.

<?     $bool = 3 > 0; // $bool = TRUE;     if ($bool == True){ //poderia ser if($bool){..        echo ("Entrou no if!");     } else {         echo ("Entrou no else!");     } ?>

Page 21: PHP & MySQL

Arrays Encapsula uma coleção de dados. Podem ser indexados por números inteiros ou

strings. Quando utilizar:

Para evitar ter muitas variáveis similares. Quando há necessidade de ordenação dos elementos Entre outros

Page 22: PHP & MySQL

Arrays Há três diferentes tipos de arrays:

Numéricos: Um array com uma chave numérica Associativo: Um array cuja chave difere de um valor

numérico (string). Multidimensional: Um array que possui um ou mais

arrays como elemento.

Page 23: PHP & MySQL

Arrays Não é necessário inicializar arrays. Adota o conceito de array dinâmico.<?php     $produtos[] = "Pneu";    /* Equivalente a $produtos[0] = "Pneu“ e implicitamente o array foi criado */    $produtos[1] = "Oleo";     $produtos[] = "Luva"; ?>  

Conteúdo do Array:

Page 24: PHP & MySQL

Indexação - Numéricos

Os arrays são indexados por números:

<?php     $produtos[] = “Carro";     $produtos[12] = “Pneus";     $produtos[2] = “Motor"; $produtos[] = “Rodas"; ?>  

Conteúdo do Array:

Page 25: PHP & MySQL

Arrays - Construtor

Utilizado para criar arrays:

Chave: int ou stringValor: pode ser qualquer coisa

[ ] opcional.

array( [chave =>] valor     , ...     );

Page 26: PHP & MySQL

Arrays

Arrays Associativos<?php     $precos = array( "Pneu"=>100, "Oleo"=>10, "Luva"=>4);

         $precos["Capo"] = 300;          echo $precos["Oleo"]; ?> Conteúdo do array:

Page 27: PHP & MySQL

Array - Multidimensionais

São arrays que possuem como elementos outros arrays.

Conceito importante em PHP. Presente nos meios de submissão de Formulários

HTTP (POST, GET, FILE, etc).

Page 28: PHP & MySQL

Array

$familias = array( "Silva"=>array( "Renata", "Kelly", "Willian" ), "Lima"=>array( "Adriana", "Thiago" ), "Barbosa"=>array( "Luana" ));

Conteúdo do array:

Exemplo:

Page 29: PHP & MySQL

Arrays

Ordenando Arrays.<?php     $produtos = array("Pneu", "Oleo", "Luvas");     $precos = array( "Pneu"=>100, "Oleo"=>10, "Luva"=>41);

         sort($produtos); // ordena pelo valor          asort($precos); // ordena por preco (valor)     ksort($precos); // ordena por nome (chave,índice)?> 

Page 30: PHP & MySQL

Array

Exemplo final:

A memória fica mapeada como:

<?php     $a = array("José", 4=>"Joaquim", "Maria");     $b = array("Id2" => "José", "Id10" => "Maria"); ?>

Page 31: PHP & MySQL

Array

Manipulando Arrays: (exemplo mais elaborado)

<?php// Criando um array normal$array = array(1, 2, 3, 4, 5);print_r($array);

unset($array[1]);print_r($array);

// Acrescentando um item (note que a chave é 5, em vez de zero// como voce pode ter esperado).$array[] = 6;print_r($array);

// Reindexando:$array = array_values($array);$array[] = 7;print_r($array);

?>

Page 32: PHP & MySQL

Resource

Representa um recurso “externo”. Por exemplo:

Uma conexão com mysql. Um arquivo aberto. ...

Exemplo:<?php     $handle = fopen (“curso.txt", "r"); ?>

http://br.php.net/manual/pt_BR/resource.php

Page 33: PHP & MySQL

NULL

Representa uma variável sem valor ou não inicializada. Não é Case Sensitive (null == Null).

Exemplo:

<?php     $raiz_quadrada = ($i > 0) ? sqrt($i) : null; ?>

Page 34: PHP & MySQL

Variáveis de variáveis

O conteúdo de uma variável pode virar o nome de uma variável.

<?php     $a = "gambiarra";          $$a = "Isso é seboso!";          echo $gambiarra; ?>

Page 35: PHP & MySQL

Referências

Exemplos de códigos e tutoriais: http://www.phpbuilder.com/

Site oficial: http://www.php.net

Exemplo de códigos: http://www.scriptbrasil.com.br/

W3 Schools: http://www.w3schools.com

Page 36: PHP & MySQL

Dúvidas??

Page 37: PHP & MySQL

PHP & MySQL

José Francisco [[email protected]]