Docsity
Docsity

Prepare-se para as provas
Prepare-se para as provas

Estude fácil! Tem muito documento disponível na Docsity


Ganhe pontos para baixar
Ganhe pontos para baixar

Ganhe pontos ajudando outros esrudantes ou compre um plano Premium


Guias e Dicas
Guias e Dicas


Aplicações com PHP e MySQL, Manuais, Projetos, Pesquisas de Programação Funcional

Este guia não tem a pretensão de exaurir o assunto, mas servir de fonte de consulta a iniciantes em programação que querem desenvolver aplicações para Web.

Tipologia: Manuais, Projetos, Pesquisas

2020

Compartilhado em 01/02/2020

RogSan
RogSan 🇧🇷

1 documento

1 / 61

Toggle sidebar

Esta página não é visível na pré-visualização

Não perca as partes importantes!

bg1
Desenvolvendo aplicações com PHP e MySQL
pf3
pf4
pf5
pf8
pf9
pfa
pfd
pfe
pff
pf12
pf13
pf14
pf15
pf16
pf17
pf18
pf19
pf1a
pf1b
pf1c
pf1d
pf1e
pf1f
pf20
pf21
pf22
pf23
pf24
pf25
pf26
pf27
pf28
pf29
pf2a
pf2b
pf2c
pf2d
pf2e
pf2f
pf30
pf31
pf32
pf33
pf34
pf35
pf36
pf37
pf38
pf39
pf3a
pf3b
pf3c
pf3d

Pré-visualização parcial do texto

Baixe Aplicações com PHP e MySQL e outras Manuais, Projetos, Pesquisas em PDF para Programação Funcional, somente na Docsity!

Desenvolvendo aplicações com PHP e MySQL

Sumário

  • Notas do Autor,
  • Introdução,
  • Instalando o VertrigoServ no Windows,
  • Instalando o Xampp (Apache, MySQL, PHP, Perl) no Linux,
  • Um primeiro Script,
  • Sintaxe Básica,
  • Tipos,
  • Array,
  • Variáveis,
  • Constantes,
  • Expressões,
  • Operadores,
  • Estruturas de Controle,
  • Estruturas de repetição,
  • Funções,
  • Algumas funções do PHP,
  • Manipulação de Arrays,
  • Funções Matemáticas,
  • PHP - Constantes Matemáticas,
  • Formulários e Interação com HTML,
  • Um pouco sobre Sessões,
  • MySQL,
  • Inserir, deletar e selecionar com MySQL,
  • Funções do MySQL,
  • PHP interagindo com o Banco de Dados MySQL,
  • Construindo uma Aplicação PHP+MySQL,
  • Referências Bibliográficas,

Introdução O nome PHP é um acrônimo que significa “PHP Hypertext Preprocessor”. PHP é uma linguagem de script interpretada utilizada em maioria para desenvolver aplicações Web embutida em um HTML, mas também pode ser usada para o desenvolvimento de aplicações desktop GUI (veja sobre PHP-GTK) e scripts de linha de comando. O PHP que temos hoje é o sucessor do PHP/FI, que significa Personal Home Page/Forms Interpreter. O PHP/FI foi criado por Rasmus Lerdorf por volta de 1995 com o intuito de controlar os acessos a sua home page (currículo on line). Você pode consultar mais sobre a história do PHP na página oficial http://www.php.net. Atualmente o PHP está na versão 5. Esta versão pode ser encontrada no site assim como a documentação em português. A princípio daremos uma ênfase maior ao desenvolvimento de aplicações para Web. Para tal, você precisa ter instalado em sua máquina um cliente (browser) Web, um servidor Web (usaremos o Apache) e evidentemente o interpretador PHP. Caso não tenha você pode instalá-los separadamente ou baixar os pacotes pré-configurados, você pode alugar um servidor que possua isso instalado se preferir. Como a configuração não é nosso objetivo mostraremos onde e como baixar esses pacotes no Linux e Windows. Grande parte das aplicações Web faz interação com um banco de dados, nós utilizaremos o banco de dados MySQL, já que é muito utilizado e gratuito. O PHP é uma linguagem de script Server-Side, isto é, um conjunto de códigos que serão interpretados no servidor. Uma característica é que o código de um arquivo.php não é exibido como acontece com um código HTML ou Java script que são chamados linguagens Client-Side, são interpretadas no cliente Web.

Instalando o VertrigoServ no Windows Como dito anteriormente, precisamos instalar o Apache (servidor Web HTTP), PHP e o MySQL (Sistema Gerenciador de Banco de Dados). Para tal vamos instalar O VertrigoServ, que é um projeto desenvolvido para facilitar a instalação desses componentes. O VertrigoServ ainda inclui SQLite, SQLiteManager, ZendOptimizer, Smarty e o PhpMyAdmin. Esse último nós utilizaremos algumas vezes para manusearmos o nosso banco MySQL. Para baixá-lo abra a página do projeto http://vertrigo.sourceforge.net/?lang=br e procure pela versão mais recente. Depois de instalar, inicie a aplicação. Note que na barra de tarefas (à direita) aparecerá um ícone com um detalhe verde significando que tudo está funcionando (Apache, PHP e MySQL). Clique sobre o ícone e em seguida sobre WWW Folder. Esta pasta é onde os seus arquivos.php deverão estar. Crie uma pasta com o nome do seu projeto, para visualizar seus arquivos .php abra o seu navegador preferido e digite http://localhost/nome_da_sua_pasta/nome_do_arquivo.php. Você pode acessar o PhpMyAdmin em Tools (ou Ferramentas) e depois clicando sobre PhpMyAdmin. Pronto, isso é tudo que precisaremos no momento!

Sintaxe Básica Como falado anteriormente, um script em PHP inicia com a tag . Essas são as tags mais utilizadas para delimitar um código PHP, mas você também pode usar desde que a opção short_open_tag esteja ativada no seu php.ini ou também se o PHP foi configurado com a opção --enable-short-tags. Outra opção, porém menos comum, é a de usar <script language-”php”> e . Como curiosidade você poderia pesquisar sobre como usar tags asp no php. Uma boa prática de programação é usar ponto e vírgula ( ; ) no final de cada comando. O ponto e vírgula diz ao PHP que a instrução chegou ao fim, e se não houver erro ele executa a próxima instrução. Você pode omitir o último ponto e vírgula ( ; ) do bloco de código, pois a tag ?> diz ao php que é o fim da instrução e do bloco. Tipos O PHP tem suporte a oito tipos primitivos: boolean, integer, float (double), string, array, object, resource e null. O PHP é uma linguagem dita fracamente tipada, pois o tipo da variável depende do contexto em que ela está inserida, isto é decidido em tempo de execução. A função var_dump() checa o tipo e o valor de uma variável ou expressão. Mas comumente queremos saber apenas o tipo de uma variável, então usamos as funções is_int(), is_float, is_string() e is_bool(). Assim como em outras linguagens podemos “forçar” um tipo em uma variável. Para fazermos isso usamos o que chamamos de casting ou a função settype(). Para converter um tipo no PHP escrevemos o nome do tipo que queremos moldar a variável entre parêntesis e em seguida o nome da variável. Veja a sintaxe do casting no exemplo abaixo: Moldagens possíveis: (int), (integer) - molde para inteiro. (bool), (boolean) - converte para booleano. (float), (double), (real) - converte para número de ponto flutuante. (string) - converte para string (binary) - converte para string binária (array) - converte para array (object) - converte para objeto Booleano

Booleano, bool ou boolean, é o tipo mais simples. Pode assumir apenas dois valores: true ou false. Esses são os chamados tipos lógicos. Observe que as palavras true e false são insensitivas, sendo assim é o mesmo que escrever True e False. Usualmente o tipo booleano é utilizado quando retornado de uma expressão envolvendo algum operador lógico: ==, >=, <=, >, <, !=. Como vimos acima, podemos converter um valor qualquer para boolean explicitamente utilizando casting ou atribuindo esse tipo a uma variável. Entretanto se uma estrutura de controle, operador ou função necessitar de um argumento booleano, esse será enviado para o PHP mesmo que a variável seja de um outro tipo qualquer. Isso ocorre porque o PHP decide o tipo da variável em tempo de execução, isso significa que uma variável pode ser boolean dependendo do contexto. Em uma conversão para booleano esses valores se tornam false :

  1. O próprio booleano FALSE.
  2. O inteiro 0 (zero) o ponto flutuante 0.0 (zero).
  3. Uma string vazia e a string "0".
  4. Um array sem elementos.
  5. Um objeto sem elementos membros (somente PHP 4).
  6. O tipo especial NULL (incluindo variáveis não definidas).
  7. Objeto SimpleXML criado para tags vazias. Qualquer valor diferente é assumido como true. Inteiro O tipo inteiro é o mesmo que conhecemos na matemática quando falamos de conjuntos numéricos. Um inteiro é um elemento do conjunto Z={..., -2, -1, 0, 1, 2, ...}. No entanto, a memória do computador é limitada, por isso existe um valor máximo para um inteiro no computador. O tamanho máximo depende da plataforma, sendo um numero aproximado a 2 bilhões que é um número de 32 bits com sinal. Como observado no manual do PHP, ele não suporta inteiros sem sinal. O tamanho do inteiro pode ser determinado por PHP_INT_SIZE, o valor máximo para PHP_INT_MAX desde o PHP 4.4.0 e PHP 5.0.5. Os inteiros podem ser representados em notação decimal (ou base 10), octal (ou base 8) e hexadecimal (ou base 16). Para que o PHP entenda que um número está sendo representado em uma outra base numérica é preciso que você explicite isso. Preceda o número com um 0 para indicar escrita em notação octal e com 0x para indicar notação hexadecimal. Veja esse exemplo:

String Uma s tring é uma cadeia de caracteres. No PHP uma string não possui um tamanho máximo, isto é, pode ser uma cadeia tão longa quanto se queira. Você pode representar uma string com ' ' (apóstrofo) ou “ ” (aspas duplas). O PHP entende mais seqüências de escape para caracteres especiais quando a string é delimitada por aspas. Veja abaixo algumas seqüências de escape extraídas do manual: \n fim de linha (linefeed ou LF ou 0x0A (10) em ASCII) \r retorno de carro (carriage return ou CR ou 0x0D (13) em ASCII) \t TAB horizontal (HT ou 0x09 (9) em ASCII) \v TAB vertical (VT ou 0x0B (11) em ASCII) (desde o PHP 5.2.5) \f form feed (FF ou 0x0C (12) em ASCII) (desde o PHP 5.2.5) \ contra barra ou barra invertida $ sinal de cifrão " aspas [0-7]{1,3} a seqüência de caracteres batendo a expressão regular dos caracteres em notação octal \x[0-9A-Fa-f]{1,2} a seqüência de caracteres batendo a expressão regular de um caractere em notação hexadecimal. Veja este exemplo do uso de strings retirado do manual:

Array Um array é um conjunto de variáveis indexadas em uma lista. No PHP, um array é um tipo bastante complexo, você pode acessar um valor da lista através de um índice que pode ser um inteiro ou até uma string. Um array pode armazenar valores de diversos tipos, como, inteiro, float, booleano, string e até mesmo outro array introduzindo o conceito de array multidimensional. Um array de uma dimensão é comumente chamado de vetor. Podemos simular árvores binárias como array de arrays, mas esse conceito foge da nossa pauta inicial. Um array pode ser construído com o método array() do PHP. Veja a sintaxe e logo abaixo um exemplo ilustrativo do uso do construtor: array( índice => valor, índice=>valor, ... ) Como falamos anteriormente, o índice pode ser um inteiro ou uma string. Valor pode ser de qualquer tipo. É importante notar algumas coisas, se você indexar um valor com um float, isto é, usá-lo como um índice no seu array, ele será convertido para inteiro. É possível criar um array omitindo os índices, isto faz com que o PHP fixe os índices como inteiros. Se todos os índices forem omitidos o PHP inicializa o primeiro índice com 0 e o restante de 1 em 1 em ordem crescente. Se forem omitidos alguns índices apenas, o PHP pega o maior índice inteiro acrescentado de um e indexa o novo valor da lista. Veja este exemplo de um array multidimensional:

atribuição. Para fazer referência é necessário o uso do & antes da variável original. Veja este exemplo: Como mostrado no exemplo acima, só é possível atribuir por referência variáveis com nome. As variáveis não precisam ser inicializadas no PHP, falaremos um pouco sobre boas práticas de programação e riscos que isso representa no Capítulo de Segurança. Quando não inicializadas elas recebem um valor padrão do tipo delas, que como dissemos, é decidido em tempo de execução de acordo com o contexto - FALSE, zero, string vazia ou null. Constantes Pela própria definição da palavra, uma constante não é uma variável. Uma variável é um identificador para um valor que pode ser alterado, e no PHP até receber um valor de outro tipo. Uma constante é um identificador de um único valor que não é alterado no decorrer do script. O nome ou identificador de uma constante é sempre maiúsculo por padrão. Como qualquer outro rótulo no PHP, o nome de uma constante válida começa com uma letra ou sublinhado, seguido por uma seqüência de letras, números e/ou sublinhados. Veja este exemplo: A forma de definir uma constante é utilizando a função define(). Uma constante não pode ser alterada depois de sua definição. Constantes podem ser boolean, int, float ou string. Uma constante não pode ser um objeto, que estudaremos adiante. Para acessar o valor de uma constante basta escrever seu nome ou utilizar a função constant(). Uma observação importante é que você não pode utilizar o caractere $ no nome de uma constante.

Expressões Utilizamos expressões em todos os exemplos dados acima. Uma expressão é uma sentença com valor. As expressões podem ser separadas em expressões de atribuição e expressões de comparação. A forma mais simples de aparecer uma expressão é em uma atribuição de um valor constante a uma variável, mas uma expressão aparece em diversas outras formas como comparações retornando um valor lógico. Veja o exemplo abaixo: O PHP avalia uma atribuição da direita para a esquerda, portanto é válido e muito comum escrevermos $a=$b=45;. O que acontece é que o PHP atribui a constante 45 a $b e a $a. No exemplo acima utilizamos os operadores incremento e decremento. Um incremento é uma atribuição do tipo $a++;, que é o mesmo que $a=$a+1;. Analogamente um decremento é subtrair 1 do valor original da variável, portanto $a--; é o mesmo que $a=$a-1; Existem vários operadores de comparação, todos eles são utilizados em expressões. Vamos citá-los aqui e vê-los no próximo capítulo com mais detalhe. Operador de atribuição =, operador de incremento ++, operador de decremento --, operadores de comparação: > (maior que), >= (maior ou igual a), < (menor que), <= (menor ou igual a), == (igual), != (diferente), === (igual a e do mesmo tipo), !== (diferente de ou não do mesmo tipo). Note que existem formas diferentes de escrever a mesma coisa, por exemplo, $a+=1; isso é interpretado pelo PHP como o valor de $a incrementado de 1. Um outro operador bem conhecido, mas talvez não tão utilizado seja o operador condicional ternário. A segunda sub-expressão é avaliada e tem seu valor retornado se a primeira sub-expressão for verdadeira, se a primeira sub-expressão for falsa a terceira sub-expressão é avaliada e seu valor retornado. Daremos um exemplo do seu uso mais adiante.

Operadores Aritméticos Exemplo Nome Resultado -$a Negação Oposto de $a. $a + $b Adição Soma de $a e $b. $a - $b Subtração Diferença entre $a e $b. $a * $b Multiplicação Produto de $a e $b. $a / $b Divisão Quociente de $a por $b. $a % $b Módulo Resto de $a dividido por $b. Operadores de comparação Exemplo Nome Resultado $a == $b Igual Verdadeiro ( TRUE ) se $a é igual a $b. $a === $b Idêntico Verdadeiro ( TRUE ) se $a é igual a $b, e eles são do mesmo tipo (introduzido no PHP4). $a != $b Diferente Verdadeiro se $a não é igual a $b. $a <> $b Diferente Verdadeiro se $a não é igual a $b. $a !== $b Não idêntico Verdadeiro de $a não é igual a $b, ou eles não são do mesmo tipo (introduzido no PHP4). $a < $b Menor que Verdadeiro se $a é estritamente menor que $b. $a > $b Maior que Verdadeiro se $a é estritamente maior que $b. $a <= $b Menor ou igual Verdadeiro se $a é menor ou igual a $b. $a >= $b Maior ou igual Verdadeiro se $a é maior ou igual a $b.

Operadores de Incremento/Decremento Exemplo Nome Efeito ++$a Pré-incremento Incrementa $a em um, e então retorna $a. $a++ Pós-incremento Retorna $a, e então incrementa $a em um. --$a Pré-decremento Decrementa $a em um, e então retorna $a. $a-- Pós-decremento Retorna $a, e então decrementa $a em um. Operadores Lógicos Exemplo Nome Resultado $a and $b E Verdadeiro ( TRUE ) se tanto $a quanto $b são verdadeiros. $a or $b OU Verdadeiro se $a ou $b são verdadeiros. $a xor $b XOR Verdadeiro se $a ou $b são verdadeiros, mas não ambos. ! $a NÃO Verdadeiro se $a não é verdadeiro. $a && $b E Verdadeiro se tanto $a quanto $b são verdadeiros. $a || $b OU Verdadeiro se $a ou $b são verdadeiros. Operadores de array Exemplo Nome Resultado $a + $b União União de $a e $b. $a == $b Igualdade TRUE se $a e $b tem os mesmos pares de chave/valor. $a === $b Identidade TRUE se $a e $b tem os mesmos pares de chave/valor na mesma ordem e do mesmo tipo. $a != $b Desigualdade TRUE se $a não é igual a $b. $a <> $b Desigualdade TRUE se $a não é igual a $b. $a !== $b Não identidade TRUE se $a não é idêntico a $b.

Encadeando if else if É muito freqüente o uso de if's encadeados durante a confecção de um programa. Vamos dar um exemplo de como seria o seu uso. Switch case O Switch case é uma outra estrutura condicional, mas diferente de outras linguagens, no PHP o switch case pode ser usado para testar condições sobre strings além de números inteiros. A instrução switch executa case a case, quando uma instrução case é encontrada com um valor igual ao valor dentro do switch, o PHP executa as instruções seguintes. O PHP executa as instruções até o fim do bloco switch ou na primeira vez que encontrar uma instrução break. Se você não escrever uma instrução break no fim das instruções case, o PHP continuará executando os cases seguintes. Vamos ver alguns exemplos:

Exemplo com strings: No exemplo acima quando o case correto é encontrado o programa sai do switch devido ao break após imprimir a frase correspondente. O case default: Este case é executado quando nenhum outro é executado.