curso desenvolvimento web com php - php (parte 1)
DESCRIPTION
Material utilizado durante o curso de Desenvolvimento WEB com PHP, realizado na UNIPAR campus Paranavaí em março de 2010.TRANSCRIPT
Desenvolvimento WEB com PHP
<?php
O que é PHP?
Linguagem do tipo script
Roda do lado do servidor – “server-side”
Suporte à vários BDs (MySQL, Postgres, Oracle, entre outros.)
Ferramentas grátis – “open source”
Quem utiliza?
Quem utiliza?
Quem utiliza?
Quem utiliza?
Quem utiliza?
Quem utiliza?
Algumas razões para utilizar...
Multi-plataforma (windows, linux, solaris. ...)
Livre para utilização
Presente em mais de 25 milhões de sites
Fácil de aprender (fácil de fazer porcaria)
Dados interessantes
Entendendo a WEB
Entendendo um servidor WEB
Instalando e configurando
Montando o servidor
Instalar serviços manualmente
Apache (httpd.apache.org)
MySQL (www.mysql.com)
PHP (www.php.net)
Montado o servidor
Instalar pacote de serviços
WampServer (www.wampserver.com)
Xampp (www.apachefriends.org/en/xampp.html)
UniformServer (http://www.uniformserver.com)
Configurando (Xampp)
Baixar arquivo: http://www.apachefriends.org/download.php?xampp-linux-1.7.3a.tar.gz
Descompactar o arquivo:
Iniciar os serviços
Diretório projetos: raiz > htdocs
tar xvfz xampp-linux-1.7.3a.tar.gz –C /opt
/opt/lampp/lampp start
Configurando (Xampp-lite)
Baixar arquivo: http://sourceforge.net/projects/xampp/files/XAMPP%20Windows/xampplite-win32-1.7.3.zip/download
Descompactar
Executar setup_xampp.bat
Executar xampp-control.exe
Configurando (UniServer)
Baixar arquivo:
http://sourceforge.net/projects/miniserver/files/Uniform%20Server/5.6.2-Nano/UniServer5_6_2.exe/download
Descompactar
Executar Start.exe
PHP
O que é um arquivo PHP?
Arquivo texto compostos de scripts
A saída sempre HTML, CSS e JavaScript
Extensões utilizadas .php .class.php .inc.php .phtml
Opâ Universo!!!
Declaração padrão
Declaração abreviada
Arquivo php.ini
<?php echo ‘Opâ Universo!!!’;?>
<? echo ‘Opâ Universo!!!’;?>
short_open_tag = On
Comentários
Os comentários podem ser feito de duas maneiras
<? //Este é um comentário de uma linha
/* Este é um comentário em bloco */?>
Variáveis
Variáveis (string)
<? $nome = ‘Willian’; $sobrenome =‘Magalhães’; echo “$nome $sobrenome”; ?>
Variáveis (booleano)
<? $exibirNome = true;
if($exibirNome) { echo ‘Willian Magalhães’; }?>
Variáveis (numérico)
<? $a = 10; $b = 5;
echo $a + $b;?>
Variáveis (array)
<? $carros = array(‘Palio’, ‘Corsa’, ‘Gol’);
echo $carros[1];
$carro[‘nome’] = ‘Fiesta’; $carro[‘combustivel’] = ‘Gasolina’;
echo $carro[‘nome’];?>
Variáveis (objeto)
<? class Computador { var $cpu; function ligar() { echo “Ligando computador a {$this->cpu}”; } }
$obj = new Computador(); $obj->cpu = ‘500Mhz’; $obj->ligar();?>
Operadores
Operadores
Operadores de atribuição
= Atribui += Atribui e soma -= Atribui e decrementa *= Atribui e multiplica /= Atribui e divide .= Atribui e concatena %= Atribui com módulo
Operadores
Operadores aritméticos
+ Adição - Subtração * Multiplicação / Divisão
% Módulo (resto da divisão)
++ Incremento -- Decremento
Operadores
Operadores relacionais
== igual a != diferente de > maior que < menor que >= maior ou igual <= menor ou igual
Operadores
Operadores lógicos
&& and
|| or
! not
Estruturas de controle
Estruturas de controle
Estrutura IF
<? if (condição) { ... se verdadeiro .. } else { ... se falso ... }?>
Estruturas de controle
Estrutura ELSEIF
<? if (condição) { ... se verdadeiro .. } else if (condição){ ... se verdadeiro ... } else { ... se falso ... }?>
Estruturas de controle
Estrutura SWITCH
<? switch (expressão) { case valor1: trecho executado se expressão igual a valor 1 break; case valor2: trecho executado se expressão igual a valor 2 break; default: trecho executado se expressão diferente }?>
Laços de repetição
Laços de repetição (loopings)
WHILE
<? while (condição) {
//EXECUTA ENQUATO A CONDIÇÃO FOR VERDADEIRA
}?>
Laços de repetição (loopings)
DO ... WHILE
<? do {
//EXECUTA ENQUATO A CONDIÇÃO FOR VERDADEIRA
} while (condição);?>
Laços de repetição (loopings)
FOR
<? for (valor inicial; condição; incremento) {
//CÓDIGO A SER EXECUTADO
}?>
Laços de repetição (loopings)
FOREACH
<? foreach (array as valor) { //CÓDIGO A SER EXECUTADO }
foreach (array as chave => valor) { //CÓDIGO A SER EXECUTADO }?>
Funções
Funções
Simples
Passagem de parâmetros
function vaca() { echo ‘muuuu!!!’;}
function quadrado($numero) { echo “O quadrado de $numero é: “ . ($numero * $numero);}
Funções
Variáveis globais
$total = 0;
function km2mi($quilometros) { global $total; $total += $quilometros; return $quilometros * 0.6}
echo ‘percorreu ‘ . Km2mi(100) . ‘milhas </br>’;echo ‘percorreu ‘ . Km2mi(200) . ‘milhas </br>’;echo ‘percorreu ‘ . $total . ‘quilometros’;
Requisição de arquivos
Requisição de arquivos
include ‘nome_do_arquivo’; // warning
require ‘nome_do_arquivo’; // erro fatal
include_once ‘nome_do_arquivo’;
require_once ‘nome_do_arquivo’;
Orientação a Objetos
Exemplo 01
Produto.class.php
<?class Produto { var $Codigo; var $Descricao; var $Preco; var $Quantidade;}?>
Exemplo 01
objeto.php
<?include_once ‘Produto.class.php’;
$produto = new Produto;
$produto->Codigo = 4001;$produto->Descricao = ‘CD – Sandy e Junior’
echo $produto;?>
Exemplo 01
Produto.class.php
...
Function ImprimeEtiqueta() { echo “Código: {$this->Codigo} <br/>”; echo “Descrição: {$this->Descricao} <br/>”;}
...
Exemplo 01
objeto.php
...
$produto->ImprimeEtiqueta();
...
Dúvidas? Sugestões?
Bibliografia
Livros PHP – Programando com
Orientação à Objetos PHP 4: Guia do Programador
Sites www.php.net www.w3schools.com.br/php imaster.uol.com.br/secao/php
Slides disponíveis em:
www.slideshare.com/wmagalhaes
JBRIGADO!
?>