Introdução a php

Preview:

Citation preview

facebook.com/allengomesvidal

� 1995

Surge o PHP desenvolvido por Rasmus Ledfordsob o nome de Personal Home Page Tools

� 1997 - PHP/FI

2ª versão da linguagem

� 1998 - PHP 3 (Andi Gutmans e Zeev Suraski )

Conexão com vários bancos de dados

Sintaxe mais consistente

10% dos servidores web

Seu nome muda para o nome atual

Um pouco de História

� 2000 – PHP 4

Suporte a diversos servidores web

Mais funcionalidades a OO.

20% da Internet

� 2004 – PHP 5

Fortalecimento a Orientação a Objetos

Frameworks MVC.

� 2012 – PHP 5.3.10

Versão Atual

Utilizada em 01 a cada 03 sites na internet (35% da web)

Um pouco de História

� PHP é uma linguagem de programação multiparadigma, com tipagem dinâmica, voltada para o desenvolvimento de aplicações web;

O que é PHP?

Curiosidade, Por que o Elefante?

Quem Utiliza PHP?

Ferramentas

Arquitetura Cliente/Servidor

Internet

Usuário/cliente acessa website PHP

Sobre o Wamp

� É um sistema indicado para os usuários que não têm instalado no windows nenhum dos programas necessários para programar em PHP (Apache, PHP e MySQL).

� Linguagem Interpretada

� O Código fonte pode ser inserido dentro do arquivo HTML

� Case Sensitive

� Sintaxe parecida com C,C++ e Java

� Software Livre, distribuído sob uma licença na qual os usuários não são obrigados a publicar seu código.

� Independente de Plataforma

Características

� Linguagem Interpretada

Significa que os comandos PHP são executados um a um diretamente por um interpretador, sem que haja necessidade de compilação como nas linguagens de programação convencionais.

Características

� Inserindo PHP no HTML

<html>

<head><title>Inserindo PHP</title></head>

<body>

<?php

echo “Alô Mundo”;

?>

</body>

</html>

O comando echo, imprimi uma mensagem com o texto Alô Mundo na tela do usuário.

Características

� Case Sensitive

O PHP é uma linguagem “Case-Sensitive” ou seja uma função / variável de nome Echo não é igual a uma função / variável de nome echo.

Características

� Sintaxe parecida com C, C++ e Java

Em termos de sintaxe, a linguagem PHP herdou suas principais construções e comandos da linguagem C e C++.

Características

� Portabilidade

A portabilidade é uma das maiores vantagens do PHP, possibilitando sua instalação em vários Sistemas Operacionais como: Windows, Linux, Unix, IBM iSeries, SGI IRIX, RISC OS, Mac OS X, entre outros.

Características

� Conceitos

Variáveis são endereços de memória nos quais podemos armazenar dados ou informações.

Usamos variáveis para manipular esses dados mais facilmente e também para não perdê-los no meio do processo.

O ponto forte de PHP é que podemos guardar qualquer tipo de dado em uma variável, desde um simples caractere até um objeto.

Variáveis

� Conceitos/regras

Toda variável tem nome e devemos tomar alguns cuidados ao nomeá-las.

Nunca deve-se começar o nome de uma variável com um número, mas sim com uma letra ou um underline (_).

Por PHP ser case-sensitive (diferencia letras maiúsculas de minúsculas), declarar uma variável x será diferente de X.

$x;

$minhaVariavel;

Variáveis

� Atribuindo dados as variáveis

Algo muito interessante em PHP é que uma variável pode ser de um tipo e virar outro a qualquer momento que quisermos.

$minhaVariavel= 200; // minhaVariável é um inteiro valendo 200.$minhaVariavel= false; // Agora, é uma variável do tipo boolean falsa.$minhaVariavel= “FJN“; // Então, deixou de ser falsa e virou uma frase.$minhaVariavel= 0.75; // Não é mais frase, agora é um número decimal.

Variáveis

� Arrays

Também conhecidos como vetores, são variáveis que servem para guardar vários valores de forma uniforme na memória. Por exemplo, se tivemos que utilizar 20 variáveis para guardar o mesmo tipo de informação, nós não faríamos -> $var1, $var2, $var3, $var4, $var5, ... ao invés disso, criaríamos apenas uma variável do tipo array para guardar todas as 20 informações de uma vez.

Variáveis

$cor = array(“Amarelo", “Vermelho", “Azul");

� Arrays

Como um único array pode possui vários valores, cada valor fica em uma posição específica da variável.

Em PHP, uma das formas de acessar tais valores é utilizando o índice (index) do array que sempre se inicia em 0.

Os índices são indicados por colchetes ([]) que vem logo após o nome da variável. Portanto, se quisermos modificar ou acessar algum dado da variável faríamos:

Variáveis

$vetor = array(); $vetor[1] = 540; $vetor[3] = 8456;

� Arrays Associativos

Uma característica bem interessante dos arrays em PHP é a capacidade de fazer associações.

Quando nos referimos a associações, queremos dizer que, ao invés de usarmos números como índices, podemos usar strings(nomes).

Dessa forma, fica muito mais simples e intuitivo obter um valor de um array, pois nomes fazem mais sentido do que números.

Variáveis

� Arrays Associativos

Para usarmos o array associativo basta apenas substituir o número do índice por uma string.

Variáveis

$doc = array(); $doc['rg'] = "00.000.000-X"; $doc['cpf'] = “020.153.713-39"; $doc['cartaodecredito'] = 12345;

$doc = array("rg" => "00.000.00-X", "cpf" => "020.153.713-39", "cartaodecredito" => 12345);

Para inicializar o array diretamente usando associações, deve-se usar seta larga para vincular um valor a uma chave.

� Operadores Aritméticos

Nesse grupo de operadores estão as operações matemáticas básicas.

Operadores

Operador Objetivo Exemplo

+ Adição $valor+$acrescimo

- Subtração $valor-$desconto

* Multiplicação $valor*10

/ Divisão $valor/5

% Módulo (resto da divisão) $valor%2

� Demais operadores

Operadores mais utilizados (atribuição, comparação, strings)

Operadores

Operador Objetivo Exemplo

& E (and) $valor & $valor2

| Ou (or) $valor | $valor2

= Atribuição $valor = $total + 5

== Igualdade $valor == $a

!= <> Diferente $valor !=10

< Menor $valor < 10

> Maior $valor > 10

. Concatenação $texto01.$texto02

� IF/ELSE

Um fator de extrema importância em qualquer linguagem de programação é a capacidade de tornar nosso código capaz de tomar decisões baseando-se no que é falso e verdadeiro

(lógica booleana).

Em PHP, usamos if e else para tal ação, em conjunto com operadores lógicos para que possamos fazer comparações.

Estruturas de Controle

� IF/ELSE

Estruturas de Controle

<?php

/*Código que verifica se um número é par ou ímpar */$numero = 50;if ($numero % 2 == 0)/** Se o resto da divisão de um número por 2 for 0,* então, quer dizer que este número é par.*/echo ("O número $numero é par");else//Caso contrárioecho ("O número $numero é impar");?>

� SWITCH, CASE E DEFAULT

Em PHP, existe um comando que permite utilizar várias opções definidas agrupadas em uma única estrutura.

Switch trabalha usando casos (case) que são valores definidos. A estrutura do switch é:

switch (variável) { case valor: código a ser executado }

Estruturas de Controle

� SWITCH, CASE E DEFAULT

Estruturas de Controle

$var1 = 0;switch ($var1) {case 0: echo “valor é zero”; break;case 1: echo “valor é um”; break;case 2: echo “valor é dois”; break;case 3: echo “valor é três”; break;default: echo “Valor fora da faixa”;break;}

� While-For

While e For são comandos que servem para manter uma porção do código executando repetidamente.

Também conhecidos como estruturas de repetição, iterações ou loops, esses comandos mantém a execução até que seu argumento seja falso.

Estruturas de Repetição

� While

A estrutura principal de while é: while (comparação) { código que será executado }.

Ou seja, a comparação é verificada, caso ela seja verdadeira, então, o código é executado.

Estruturas de Repetição

<?php

$n = 1;while ($n <= 10){echo ($n." ");$n++;}?>

Isso resultará em:1 2 3 4 5 6 7 8 9 10

� For

A estrutura principal de for é: for (valor inicial; comparação; modificação do valor) { código que será executado }

Estruturas de Repetição

<?php

for ($n=1; $n <= 10; $n++) {echo ($n." ");}?>

Isso resultará em:1 2 3 4 5 6 7 8 9 10

� Variáveis Global e Local

As variáveis são classificadas em dois tipos, em qualquer linguagem de programação, que são as globais e as locais.

Variável Global: Criada ou declarada fora de uma função, portanto podem ser utilizadas a qualquer momento no seu script.

Variável Local: Criada ou declarada dentro de uma função, portanto só podem ser utilizadas dentro da função criada.

Variáveis

� Conceitos/regras

Funções são usadas para criar pequenos trechos de códigos separados do script principal.

Esses trechos de códigos podem gerar um resultado (o que chamamos de funções com retorno) ou apenas executar uma rotina (funções sem retorno).

Funções também são úteis para serem facilmente chamadas quando precisa-se repetir várias vezes um mesmo trecho de código.

Funções

� Funções sem retorno

Para criar funções em PHP usamos a palavra-chave function, então, damos um nome para nossa função.

Essas primeiras funções que criaremos serão simples e não terão parâmetros.

Portanto, a regra geral é a seguinte:

<?php function nomedaFuncao ( parâmetros ) { código da função } ?>

Funções

� Funções sem retorno

Funções sem retorno são ideais para criar pequenos trechos de script que serão repetidos várias vezes durante o código.

Por exemplo, a função abaixo irá mostrar na tela a mensagem Bem vindo ao PHP.

<?phpfunction ola () {echo (“<strong>Bem vindo ao PHP<strong><br>");}ola();?>

Funções

� Funções com retorno

� A principal diferença é que esta função devolve um resultadopara o script. Por exemplo, podemos gerar um resultado de uma soma e devolver este resultado para o script.

� Para que uma função retorne algum valor usamos a palavra reservada return.

<?phpfunction somar () {return 5+5; }echo somar();?>

Funções

� Funções com parâmetros ou argumentos

Muitas vezes, funções devem receber dados para processá-los.

A inserção de dados na função é dada por meio dos parâmetros ou argumentos da função.

Uma função pode ter quantos parâmetros forem necessários desde que cada um seja separado por vírgula e não tenha a mesma denominação.

Funções

� Funções com parâmetros ou argumentos

Exemplo de uma função com retorno e outra sem retorno usando parâmetros.

function mostrar ($mensagem){echo $mensagem;}function somar ($x, $y){return $x+$y;}echo mostrar(“FJN!");$resultado = somar (5,5);echo mostrar($resultado);

FJN!

Isso resulta em:

10

Funções

� Exemplo de algumas funções nativas do PHP

include

isset

empty

file_exists

explode

implode

date

rand

Funções nativas do PHP

� Include

Função utilizada para inserir arquivos dentro de uma página PHP.

Funções nativas do PHP

Include (“arquivo.php”);

� Isset

A função isset() verifica se uma variável existe.

Funções nativas do PHP

/* Neste caso será impresso Variável existe.$nome=“php”;If (isset($nome)) {echo “Variável existe”; }

� Empty

A função empty() verifica se uma variável está vazia.

Uma variável é considerada vazia (empty) em PHP se ela se

encaixar em uma das categorias abaixo:

Funções nativas do PHP

$nome_da_variavel = 0;if(empty($nome_da_variavel)) { echo "Variável nula."; } else { echo "Variável não-nula."; }

a) "" (uma string vazia) b) 0 (0 como um inteiro)c) "0" (0 como uma string) d) NULLe) false f) array() (um array vazio)

� Explode

A função explode() serve para dividir uma string em um vetor ou array de strings.

Funções nativas do PHP

$nome_arquivo = "texto.txt";$arquivo = explode('.', $nome_arquivo);echo ("O nome do arquivo é " . $arquivo[0]);echo (" e sua extensão é " . $arquivo[1]);

o que fizemos foi separar uma string única a partir do caracter ponto (.)

o caracter ou string usado como ponto de quebra ou separador é automaticamente excluído na separação, portanto, no caso acima o caracter ponto (.) deixa de existir.

� File_exists

A função file_exists() verifica se o arquivo ou diretório informado existe, retornando Verdadeiro (TRUE) em caso de afirmativo e Falso (FALSE) caso contrário.

Funções nativas do PHP

//Verifica se um arquivo existe$arquivo = “teste.txt”;if (file_exists ($arquivo)) {include (“$arquivo”);}else {echo “Arquivo não existe!”;}

Crie um arquivo chamado teste.txt

Dentro desse arquivo digite seu

nome e salve na mesma pasta do arquivo PHP.

� Implode

Implode faz exatamente o contrário de explode.

Ao invés de separar uma string em um vetor ou array, implode une ou junta os índices de um array em uma string única.

Isso não importando de que tipo de array se trata, pode ser array de índices comum ou array associativo.

Funções nativas do PHP

$array = array ("www", "fjn", "edu", "br");$frase = implode ('.', $array);echo ($frase);

� Date

Utiliza-se a função date() para formatação de datas.

Funções nativas do PHP

//Exibindo data atualecho date(d.m.y);// H= Hora no formato 24 horas com dois digitos i= minutos s=segundosecho date(H.i.s);

� Rand

A função rand produz números aleatórios.

Funções nativas do PHP

//Exibindo um número randômico.$numero = rand (1,999)echo “seu número da sorte é $numero”;

� Rand

Crie/salve 04 imagens com os mesmos nomes que estão no código abaixo dentro da mesma pasta que vai estar o seu arquivo.php

Funções nativas do PHP

$pg = rand(1,4);if($pg == 1){

echo '<img src="imagem1.jpg"/>';}elseif($pg == 2){

echo '<img src="imagem2.jpg"/>';} elseif ($pg == 3) {

echo '<img src="imagem3.jpg"/>';}else{

echo '<img src="imagem4.jpg"/>';}

Exercício de Fixação

01. Crie um laço (for ou while) que receba 20 números e

mostre apenas os impares, junto com o número a frase

“o numero é impar” em negrito;

02. Crie um array associativo que receba “nome”, “endereço”,

“numero da casa” e “cep”. Imprima os dados do array.

03. Crie uma função que multiplique dois números

informados pelo usuário e incremente +10 no valor final.

O PHP disponibiliza variáveis chamadas superglobais, as quais estão disponíveis em qualquer lugar do script, sem que seja necessário declará-las globais.

A principal finalidade dessas variáveis é facilitar o acesso a dados enviados pelo servidor web (como por exemplo, campos de um formulário). São elas:

Varíaveis Superglobais

� $_GET

O método GET envia uma informação de até 255 caracteres, que são enviados junto ao endereço do browser, por exemplo:http://localhost/pagina.php?x=10&y=20.

Neste endereço estamos dizendo que o valor de x é 10.

Varíaveis Superglobais

//para usarmos este valor devemos fazer:$variavel1 = $_GET[“x”];$variavel2 = $_GET[“y”];echo ($variavel1 + $variavel2);

� $_POST

O POST é praticamente igual ao GET, porém, ele envia uma informação pelo método HTTP POST.

Permite o envio de muito mais informações que o GET e não aparece as informações junto ao endereço(url).

Variáveis Superglobais

//Neste caso o valor será enviado através de um formulário HTML$variavel = $_POST[“x”];

QueryString

A QueryString é um modelo clássico de manutenção do estado da página. Elas são nada mais do que um conjunto de valores anexados a URL.

Seu uso é simples, após a URL de determinada página, adicionamos o primeiro valor usando a seguinte sintaxe: ?pagina=valor.

QueryString

QueryString é um método que tem a função de chamar as páginas de forma dinâmica.

Exemplo:

meusite.com.br/index.php?pagina=contatos

meusite.com.br/index.php?pagina=sobre

meusite.com.br/index.php?pagina=equipe

QueryString

meusite.com.br/index.php?pagina=contatos

meusite.com.br/index.php?pagina=sobre

//Exemplo de utilização

if (isset($_GET["pagina"])) {$pag = $_GET["pagina"];if ($pag == contatos) include (‘contatos.php');elseif ($pag == sobre) include (‘sobre.php');}

Envio de Emails Com PHP

� Função mail()

Enviar emails é a situação mais comum em sites dinâmicos, e enviar e-mails com o PHP é extremamente simples, pois dispomos da função mail() a qual se encarrega de enviar as mensagens de e-mail.

$destinatario = “allengomesvidal@hotmail.com”;$assunto = “Aula de PHP”;$mensagem = “Quando será a próxima aula?”mail ($destinatario,$assunto,$mensagem);

Envio de Emails Com PHP

� Função mail()

Temos também o parâmetro header, que deve ser utilizado para passar informações sobre o documento.

$destinatario = “allengomesvidal@hotmail.com”;$assunto = “Aula de PHP”;$mensagem = “<h1>Quando será a próxima aula?</h1>”$header = “From: fjn@fjn.edu.br \r\n”;$header .= “Content-type: text/html”;mail ($destinatario,$assunto,$mensagem,$header);

PHP e MYSQL

� Funções Mysql (mysql_connect)

Esta função habilita uma conexão com o servidor de banco de dados MySQL. É indispensável a necessidade de chamada dessa função antes de qualquer transação na base de dados.

Esta função retorna o número inteiro 1 se a conexão for bem sucedida, caso contrário retorna 0. A sintaxe:

mysql_connect("host","usuario","sua_senha");

PHP e MYSQL

� Funções Mysql (mysql_connect)

Onde:

host - corresponde ao nome do computador que tem o

servidor de Banco de Dados MySQL rodando. Pode ser o

nome, por exemplo - localhost, ou o endereço de IP.

usuário - é o nome de usuário do banco de dados

sua_senha - a senha do banco de dados

mysql_connect("host",“usuario","sua_senha");

PHP e MYSQL

� Funções Mysql (mysql_select_bd)

Esta função seleciona um banco de dados, retornando 1 se a transação foi bem sucedida e 0, caso contrário.

Possui a seguinte sintaxe:

mysql_select_db("nome_do_db",inteiro_conexao);

PHP e MYSQL

� Funções Mysql (mysql_select_bd)

Onde:

nome_do_db - é o banco de dados que se quer utilizar.

inteiro_conexao - corresponde ao identificador retornado pela função mysql_connect().

mysql_select_db("nome_do_db",inteiro_conexao);

PHP e MYSQL

� Exemplo de Conexão

//Conectando com o Mysql$conexao = mysql_connect("localhost",“root","");

//Selecionando o banco de dados //O parametro $conexao é opcional.$banco = mysql_select_db("usuarios",$conexao);

PHP e MYSQL

� Funções Mysql (mysql_query)

Utilizada pra executar qualquer consulta ao banco de dados, sua sintaxe é:

mysql_query (comando_sql,$conexao);// O parâmetro conexão é opcional.

PHP e MYSQL

� Funções Mysql (mysql_fetch_assoc)

Retorna um array em que os índices são os nomes das colunas da consulta executada e os valores o conteúdo do registro (o PHP respeita o formato dos nomes das colunas, ou seja, os caracteres maiúsculos e minúsculos são mantidos da mesma forma especificada na consulta.)

mysql_query (comando_sql,$conexao);// O parâmetro conexão é opcional.

PHP e MYSQL

� Funções Mysql (mysql_num_rows)

Utilizada para obtermos o número de linhas retornado após o mysql_query.

Sua sintaxe é:

mysql_num_rows (identificador);

Recommended