Introdução Variáveis, Constantes, Operadores, Estruturas de Seleção e Repetição Arrays e Vetores
Apresentação Thiago Miranda Email: mirandathiago@gmail.com Site: www.thiagomiranda.net
Ementa da Disciplina Linguagem de Programação para desenvolvimento Web do lado do Servidor. Conceitos, estrutura e elementos utilizados no desenvolvimento da linguagem PHP. Integração da linguagem PHP com o Banco de Dados Mysql
Competências Compreender a linguagem de Programação PHP, seus conceitos, estrutura e elementos. Utilizar conhecimentos em linguagem dinâmica com acesso a sistemas de Banco de Dados Identificar e conhecer o funcionamento de uma linguagem de programação para WEB do lado do servidor e compreender a integração dessa linguagem com Bancos de Dados.
Habilidades Desenvolver websites e sistemas para o lado servidor. Desenvolver aplicações que utilizem Sistemas de Banco de Dados. Desenvolver sites e sistemas WEB com acesso a banco de dados, controle de sessões e transação, de forma segura e confiável. Criar recursos dinâmicos para páginas e sistemas web. Reconhecer os comandos da linguagem PHP;
Conteúdos 1. Introdução a linguagem PHP. 2. Características da linguagem de programação PHP 3. Diferenciação entre linguagens Client-Side e Server-Side 4. PHP. 1. Sintaxe da linguagem 2. Variáveis. 3. Operadores lógicos. 4. Operadores matemáticos. 5. Instruções de repetição. 6. Instruções condicionais. 7. Funções 5. Formulários e PHP (Dados Via GET e POST ) 6. Sessões e Cookies 7. Manipulação de Arquivos 8. Integração entre Banco de Dados e Programação 9. Programação Orientada a Objetos
Cronograma da I Unidade Aula 1 Apresentação da Disciplina, Variáveis, constantes, operadores Aula 2 Estruturas de Seleção e Repetição, Arrays e Vetores Aula 3 - Integração de formulários com PHP (Métodos GET e POST Aula 4 - Funções (Funções de Manipulação de Datas, Funções de Manipulação de Strings, Aritméticas) Aula 5 Funções - Continuação Aula 6 Avaliação Teórica
Proposta de trabalho Enfoque teórico e prático com uso de muitos exercícios, realizados em sala e em casa para fixação Aprendizado visando a aplicação prática do conhecimento Avaliação Serial e diária
Avaliação Avaliação Serial (Diária) 4 atividades em 5 aulas - Valor: 2 pontos Avaliação Teórica: 6 Pontos Lista de Exercícios: 2 pontos
Avaliação Atividades Práticas diárias: 2 Pontos Em nossas aulas teremos atividades práticas a serem desenvolvida abordando os temas já trabalhados. Devem ser enviadas por email para: mirandathiago@gmail.com O assunto do email deve ser [ Atividade 01 ] Seu nome Os arquivos deverão ser enviados compactados no formato zip com o nome do arquivo sendo o seu nome. Tentar fazer a atividade conta muito, mesmo q não esteja funcionando, envie o arquivo e tente explicar o erro no corpo do email. Cópias não serão aceitas.
Conteúdos Os materiais de aula, apostilas e outras informações estarão disponíveis em: www.thiagomiranda.net
O PHP Linguagem Interpretada Tipagem dinâmica e fraca Voltada ao desenvolvimento de Websites dinâmicos Linguagem mais utilizada no mundo para WEB Gratuita e Livre Embutido no HTML Curva de Aprendizado baixa Portabilidade Suporte a vários BDs
Rasmus Lerdorf É um programador canadiano-dinamarquês e o autor da primeira versão da linguagem de programação PHP. (Wikipédia)
O PHP 70% de todos os sites do mundo são feitos em PHP
Softwares Utilizados Requisitos básicos: Servidor Apache (apache.org); Linguagem PHP (php.net); Servidor MySQL (mysql.com); Para facilitar a instalação utilizaremos o software Xampp que instala automaticamente os outros três aplicativos Download: http://www.apachefriends.org/pt_br/xamppwindows.html Como editor utilizaremos a IDE NetBeans, mas pode ser utilizado qualquer outro editor como o Notepad++
Modelo Cliente - Servidor
Modelo Cliente - Servidor 17
Modelo Cliente - Servidor 1 cadastrarusuario.php 6 Aí, esse HTML eu sei que tu entende! Aí véi, to com esse arquivo aqui, interpreta ele pra mim? 2 5 3 Ae, interpretei e virou esse HTML aí! Agora é contigo brother! E aí MySQL, beleza? O Apache pediu pra eu interpretar um arquivo, daí eu preciso inserir um dados na tabela usuario. Toma aí os dados e insere, beleza? 4 Firmeza, ta inserido!
Delimitadores de código PHP Assim como o HTML temos as tags no PHP temos os delimitadores de código, que são <?php e?> respectivamente a tag de abertura e a tag de fechamento, em que o código deve ser inserido. Veja o exemplo a seguir:
PHP + HTML <html> <head> <title>ifba</title> </head> <body> <?php echo Hello IFBA?> </body> </html>
Comentários Simples Uso do // para comentar uma linha Várias Linhas Uso de /* e */ para comentar várias linhas. 21
Variáveis Variáveis são definidas utilizando um cifrão ($); Em PHP, variáveis possuem tipagem dinâmica e fraca; Tipagem dinâmica significa que uma variável assume um tipo de acordo com o valor que lhe é atribuído; Tipagem fraca significa que você pode trabalhar de forma livre com as variáveis.
Variáveis Devem ter pelo menos 1 caractere depois do $ O Primeiro caractere depois do $ deve ser uma letra ou um underline _ e depois deste caractere pode vir um número, letra ou um underline Espaços e outros caracteres especiais que não seja o underline não são permitidos. São Case Sensitive [$teste é diferente de $TESTE] Nunca utilize caracteres especiais em nome de uma variável como acentos (é í ó) cedilha (ç)
Variáveis - Tipos Int Inteiros [ $var_inteiro = 10; ] Float Ponto Flutuante [ $var_float = 3.3; ] String Texto [$var_txt = ifba ; ] Boolean Verdadeiro e Falso [ $var_bool = TRUE;] Array Coleção de elementos [ var_array = array(1,2,3,10,20); ]
Comandos de Saída Esses são os comandos usados para gerar uma saída em tela (output): echo; print; var_dump; print_r;
Aspas Aspas Simples: Utilizada para imprimir exatamente o texto contido entre as aspas. Aspas Duplas: Utilizado para imprimir com os valores de variáveis e caracteres de escape.
Variáveis Vamos testar? Crie uma variável de cada tipo: inteiro, float, string e Booleano. Não esqueça de imprimir o resultado na tela utilizando as funções vistas anteriormente.
Constantes Guarda valores que não serão alterados. Utiliza-se a função define para criar uma constante. define( NOME_DA_CONSTANTE, VALOR DA CONSTANTE ); O nome de uma constante tem a mesma regra de qualquer identificador PHP, ou seja, as mesmas regras de nomes de variáveis exceto pelo fato de constantes não iniciarem o nome com cifrão ($). Geralmente utilizam o nome da constante em letras maiúsculas.
Arrays Chaves dos Arrays inicia-se 0!
Arrays Usando o colchetes sem índice ( [ ] ) o PHP procurará o último índice utilizado e o incrementará
Arrays Vamos testar! Crie um array com o nome das suas cinco frutas prediletas. Imprima apenas aquelas que tenham o índice ímpar. Agora adicione um novo item no array, qual será o número do seu índice? Descubra e imprima na tela seu valor!
Arrays Também pode ser usada um string como índice, neste caso chamada de chave associativa É possível utilizar arrays com 2 tipos de índice sem ocorrer erro
Arrays Vamos testar! No mesmo array, adicione um novo item com o índice de nome preferido e com o valor da sua comida favorita. Não deixe de imprimir na tela!
Matriz São arrays multidimensionais Também possuem um único identificador mas formado por um ou mais índices $brasil[ BA"][1] = Brumado"; $brasil[ BA"][2] = Anagé"; $brasil[ BA"][3] = Vitória da Conquista"; $brasil["mg"][1] = "Belo Horizonte"; $brasil["mg"][2] = "Araguari"; $brasil["go"][1] = "Goiânia"; echo $brasil[ BA"][1]. "<br>"; //Resultado brumado echo $brasil["mg"][2]. "<br>"; //Resultado Araguari echo $brasil["go"][1]. "<br>"; //Resultado Goiânia
Matriz
Matriz Vamos testar! Vamos criar uma Matriz de duas dimensões, nela iremos adicionar O nome de algumas pessoas, e seu salário. João R$ 1.500 Pedro R$ 2.000 Maria R$5.000 Imprima o nome e o salário de Maria na tela utilizando a Matriz criada.
Operadores aritméticos
Operadores aritméticos Vamos testar! Vamos criar uma pequena calculadora que irá receber duas variáveis e realizar todas as operações mostradas anteriormente. Não esqueça de imprimir os resultados.
Operadores de atribuição
Operadores atribuição Vamos testar! Utilizando o mesmo princípio da calculadora, crie um arquivo com duas variáveis e teste os operadores de atribuição mostrados anteriormente. Não esqueça de imprimir os resultados.
Operadores de String O único operador de string que possuímos no PHP é o operador de concatenação, além do que falamos anteriormente que é o de atribuição e concatenação, que é representado pelo.(ponto). O operador de concatenação tem por finalidade unir o conteúdo de duas strings <?php $titulo = 'Operadores de string ; $texto = 'Estou aprendendo sobre '. $titulo; echo $texto;?>
Operadores de Incremento e decremento Programação WEB II Os operadores de incremento e decremento são muito parecidos com os operadores aritméticos. Eles permitem que sejam feitas adições (incremento) e subtrações (decremento) direto na variável informada, mas sempre operações unitárias, isto é, soma se 1 ou subtrai se 1 da variável. Os operadores de incremento e decremento são respectivamente ++ e --. Existem duas formas de incremento/decremento: Pós e Pré.
Operadores de Incremento e decremento Programação WEB II
Operadores de Incremento e decremento Programação WEB II Pós incremento/decremento O PHP retorna o valor da variável para só depois então a incrementá-la/decrementá-la. Veja o exemplo:
Operadores de Incremento e decremento Programação WEB II Pré incremento/decremento O PHP primeiro incrementa/decrementa a variável e depois retorna o seu valor. Observe alterando o exemplo anterior:
Operadores de Incremento e decremento Programação WEB II Vamos testar! Veja os dois exemplos dados nos slides anteriores e veja qual será o resultado final das variáveis $a e $b. Imprima na tela o resultado da seguinte forma: O resultado de a é : VALOR e o resultado de b é: VALOR na forma Préincremento.
Operadores de Comparação Operadores de comparação como o próprio nome já diz compara dois valores retornando verdadeiro (TRUE) ou falso (FALSE).
Operadores de Comparação Vamos testar! Utilizando a tabela de operadores de comparação do slide anterior, crie exemplos que imprimam na tela se a comparação é verdadeira ou falsa. Exemplo de saída Num1 é 10 Num2 é 20 Num1 > Num2 FALSE Para imprimir o resultado da comparação utilize var_dump($num1 > $num2) ao invés de echo
Operadores Lógicos Os operadores lógicos realizam comparação entre expressões, exceto o! que compara apenas um valor, e como os operadores de comparação retornam verdadeiro (TRUE) ou falso (FALSE).
Operadores Lógicos
Operadores Lógicos
Operadores de Lógicos Vamos testar! Utilizando a tabela de operadores lógicos do slide anterior, crie exemplos que imprimam na tela se a comparação é verdadeira ou falsa. Exemplo de saída Num1 é 10 e Num2 é 20 e Num3 é 5 e Num4 é 40 (Num1 > Num2) AND (NUM3 > NUM4) FALSE Para imprimir o resultado da comparação utilize var_dump(($num1 > $num2) AND (NUM3 > NUM4)) ao invés de echo
Estruturas de Controle Comandos usados para estruturar seus programas Comandos comuns a maioria das linguagens de programação Uso fundamental para realizar decisões lógicas, testar se determinada expressão é verdadeira, repetir um bloco de comandos por um certo número de vezes ou até que uma condição seja atingida
Estruturas de Controle
Comandos condicionais IF SWITCH
Comandos condicionais Podemos avaliar uma expressão e, dependendo do resultado obtido, executar um trecho de código diferente Usado na tomada de decisão dentro de um programa Exemplo imprimir o valor aprovado caso a nota do aluno seja maior que 6, senão imprimir reprovado
Comandos condicionais
IF - Else if($numero < 20){ echo "$numero é menor que 20"; } else { echo "$numero é maior que 20"; } if( condição ){ <faz alguma coisa quando condição é verdadeira> } else { <faz alguma coisa quando condição é falsa> }
IF - Else Vamos testar! Faça um programa que utilizando o comando condicional IF e Else determine se uma pessoa com a idade colocada numa variável é maior ou menor de idade e imprima isso na tela.
IF Elseif - Else if($numero < 20){ echo "$numero é menor que 20"; } elseif($numero == 20){ echo "$numero é igual a 20";} else { echo "$numero é maior que 20"; }
IF Elseif - Else
IF Elseif - Else Vamos testar! Utilizando o mesmo exemplo anterior, determine se uma pessoa com a idade colocada numa variável é maior, tem a idade igual a 18 anos ou é menor de idade e imprima isso na tela.
Switch Parecido com o if, pois ambos avaliam o valor de uma expressão para escolher o que vai ser executado Quando se tem a mesma variável com valores diferentes valores para ser avaliado, já que usa basicamente a igualdade e o if qualquer condição
Switch
IF X Switch
Comandos de Repetição Utilizados para que um bloco de instruções seja executado por um número determinado de vezes, ou até que uma condição seja atingida
Comandos de Repetição while do...while for for each
While Traduzido para o português significa enquanto Composto por uma expressão e um bloco de comando O comando avalia a expressão, e enquanto essa expressão retornar o valor verdadeiro, a execução do conjunto de comandos será repetida. Caso seja falsa o bloco encerra a execução do bloco Tomar cuidado para não criar expressões que nunca se tornam falsas pois teríamos um loop infinito.
While
While Vamos testar! Ajude nosso amigo Bart a não precisar escrever a frase Não farei isso novamente 50 vezes, faça um programa utilizando o While. Agora o que aconteceria com o programa se na condição você colocasse (variavel =! 0 )?
Do While A única diferença entre o while e o do...while é que o while avaliza a expressão no início do laço e o do...while ao final Vai ser executado ao menos uma vez e caso usasse o while não seria executado nenhuma vez
Do While
For Usado quando queremos executar um conjunto de instruções por quantidade especifica de vezes Pode ser usado para imprimir os elementos de um array ou todos os resultados de uma consulta no banco de dados
For
For Com inicialização iniciamos o valor inicial da variável que controlará o loop $cont = 0; Na condição devemos colocar a condição para que o loop continue a ser executado. Quando a condição retornar um valor falso o loop parará $cont<20 O operador é usado para atualizar o valor da varíavel de controle, fazendo um incremento ou decremento ao final de cada iteração do loop $cont++
For
FOR Vamos testar! Utilize o FOR para criar a tabuada de Soma e Multiplicação do número 7. Apresente na Tela: 7 + 1 = 8...
Foreach Oferece uma maneira mais fácil de navegar entre os elementos de um array Todos os itens de $nome_array serão visitados. A cada iteração o item da vez será armazenado em $elemento. Assim é possível trabalhar todos os elementos usando somente uma variável
Foreach
Foreach Vamos testar! Utilize o FOREACH para imprimir na tela todos os valores de um array com o nome de 6 carros diferentes.
Comandos de Controle de Fluxo Break Continue
Comandos de Controle de Fluxo Break Termina a execução do comando atual, podem ser um if, for, while ou switch. O fluxo continua exatamente no primeiro comando após a estrutura
Comandos de Controle de Fluxo Continue Usado para ignorar o restante das instruções dentro do comando de repetição indo para a próxima iteração (voltando para o início do laço) for($i=0; $i<20;$i++) { // é impar if($vetor[$i]%2!= 0) { continue; } echo "O número ". $vetor[$i]. " é par.<br>"; }
Dúvidas
Exercício Elabore um script que receba uma variável do tipo Array de duas dimensões (Matriz) que tenha um nome de uma cidade e uma determinada temperatura em graus celsius. O script deverá criar uma página enviando ao cliente uma mensagem relatando como está o clima da cidade, conforme tabela abaixo:
Exercício Joãozinho tem 1,50m e cresce 2 centímetros por ano. Pedrinho tem 1,10m e cresce 3 centímetros por ano. Elabore um script em PHP que escreva na página web quantos anos levará para que Pedrinho fique maior do que Joãozinho.
Exercício Utilize a estrutura switch para criar um script que receba de uma variável o código e escreva o estado civil apropriado, baseando-se na tabela abaixo: