Você está na página 1de 30

Autor: Tiago Peres Frana

Faculdade de Computao Universidade Federal de Uberlndia PET Cincia da Computao

O que o PHP?

PHP uma linguagem de programao para a WEB, que permite a gerao automtica de pginas HTML. O PHP uma linguagem de programao interpretada, diferente do C, por exemplo, que compilada. O programa PHP roda no servidor diferenciando-se do Javascript, por exemplo, que executado na mquina do usurio. O cdigo PHP embutido no cdigo HTML de uma pgina. Para que o programa em PHP possa ser interpretado pelo servidor, este deve possuir a extenso .php.

Tags HTML bsicas

<html> </html>; <head> </head>; <body> </body> <h1> </h1>; <p> </p>; <br />

<img src = x.jpg />


<table> <td> <tr> </tr> </td> </table> <a href = x.html>pgina x</a>

O que CSS? E Javascript?

CSS um documento separado do arquivo HTML da pgina. As folhas de estilo facilitam a configurao do visual das pginas HTML. interessante a interao do PHP com o CSS. Dentre as aplicaes esto: personalizao de uma pgina segundo o usurio, e configurao de uma folha de estilo para cada Browser (vide incompatibilidades do Internet Explorer). Javascript uma linguagem interpretada e executada na mquina do usurio, ou seja, no preciso que se envie a informao para o servidor para s assim obter um resultado. uma das principais ferramentas da chamada Internet Rica.

Servidor Apache

O PHP no pode ser executado como um documento HTML, precisa estar num servidor. Apesar da necessidade de um servidor, no interessante pagar, nem trabalhar num servidor online enquanto o website ainda no est pronto. Para o desenvolvimento, indicado que se crie um servidor no prprio computador, o localhost. Neste curso utilizaremos o servidor Apache. Todos os arquivos que sero executados no servidor (inclusive as pginas PHP) esto localizados por padro em apache/htdocs (Windows) ou /var/www (Linux).

Inserindo cdigo PHP num documento HTML

Para informar ao interpretador do PHP que a partir de um dado momento, o cdigo escrito representa instrues do PHP, basta-se utilizar a tag <?php. Para inform-lo sobre o encerramento do cdigo, a tag ?> utilizada. O PHP imprime cdigo HTML, ou seja, a sada padro do PHP justamente o cdigo HTML da pgina. A impresso no PHP feita atravs da palavra reservada echo.

Utilizando uma IDE

O cdigo PHP, assim como em outras linguagens de programao, pode ser escrito em qualquer editor de textos. Mas, existem ferramentas especializadas em facilitar a vida do programador na escrita do cdigo, as IDEs.

Exemplo de IDEs:
Adobe Dreamweaver Eclipse Net Beans

Aconselha-se o uso do Eclipse ou do NetBeans, por serem ferramentas gratuitas.

Exerccio: Hello World!

Faa um Hello World! no PHP. O bem conhecido exerccio Hello World, bastante aplicado em cursos de programao, consiste na impresso da frase Hello World na tela.

Resposta
<html> <head></head> <body> <h1><?php echo Hello World; ?></h1> </body> </html>

Variveis

As variveis no PHP, diferente de linguagens como Java e C, no precisam ser declaradas, nem terem seu tipo especificado. Toda varivel no PHP possui o identificador $. Nomes vlidos de variveis: $nome, $estado5, $d5e6_f7. Nomes invlidos de variveis: $1nome, $_abc, $sobrenome. aconselhvel a nomeao de variveis em letras minsculas, pois o PHP uma linguagem casesensitive.

Padro utilizado no curso (funes)

No slide seguinte apresenta-se a primeira das vrias funes do PHP que sero utilizadas neste curso. Toda funo apresentada ao leitor ser especificada como se segue: Tipo Nome (T P1, T P2, ..., T Pn [, T O1, T O2, ..., T On]), onde:

Tipo o tipo de dado retornado pela funo. Nome o nome da funo. T um tipo de dado. Pi um parmetro obrigatrio Oi um parmetro opcional.

Constantes

Diferente das variveis, as constantes devem ser declaradas, e sempre no incio do programa. Para definir uma constante, basta-se utilizar a funo define: Bool define (string nome, misto valor [, bool case_insensitive]) Exemplo: define (GRAVIDADE, 9.8);

Escopo das variveis

O escopo de uma varivel no PHP vlido em todo o programa, exceto nas funes.
<? $teste = 5; function dobro ($nro){ $nro = $nro * 2; } dobro ($teste); echo $teste; ?>

A execuo do cdigo acima imprime o valor 5 na tela, pois o escopo de $teste no inclui a funo dobro.

Tipos de dados: Numricos


Tipo
Inteiro

Descrio
Valor inteiro variando entre -2 147 483 648 e +2 147 483 647. o tipo longint do C. Pode ser representado em decimal, octal (iniciando o nmero com 0) e em hexadecimal (iniciando o nmero com 0x). Nmeros reais de preciso simples. Podem ser representados de trs maneiras diferentes: Na forma x.y, onde x a parte inteira e y a parte fracionada. Na forma .y, correspondente a 0.y. Em notao cientifica. Nmeros reais de preciso dupla.

Exemplo
253; 017; 0xA5C

Float, Real

4.012; .83; 6.8E+9

Double

Exerccio

Crie um arquivo PHP e declare as constantes A = 10 e B = 15. Inicialize as variveis $a e $b como 18.58 e 30 respectivamente. Some A com $a e exiba o resultado na tela como um ttulo (<h1>).

Na prxima linha exiba o resultado de B + $b como um texto comum, sem formatao especfica.

Resposta
<html> <body> <?php define("A", 10); define("B", 15); $a = 18.58; $b = 30; echo "<h1>"; echo A + $a; echo "</h1><br />"; echo B + $b; ?> </body> </html>

Tipos de dados: Alfanumricos

Os dados alfanumricos so os textos, strings, e podem ser expressos de trs maneiras diferentes:
Aspas simples (): Delimita uma string. Deve-se tomar

cuidado com a utilizao destas no texto, a mesma deve aparecer precedida de \ para que o PHP no a encare como fechamento da string. Aspas duplas (): Funciona como as aspas simples, tambm delimita uma string. O caractere \ tem a funo de identificar os caracteres de controle. Exemplos: \, \n, \t, \\. Aspas invertidas (ou acento agudo) (): Delimita uma string que representa a chamada de alguma funo do sistema operacional. Exemplo: ls l *.html

Converso de variveis

As variveis no PHP so automaticamente tipadas, no preciso defini-la como inteiro, por exemplo, basta-se atribuir um inteiro a ela. As converses de tipo so, em maioria, tambm automticas. Somar duas strings e receber um inteiro algo possvel no PHP, por exemplo. Mas, deve-se ficar atento com este tipo de operao, nem sempre o PHP realiza a converso que se desejada. A operao entre inteiro e um tipo mais geral retorna o tipo mais geral. Ex.: 8 + 9.6 = 17.6. Caso o PHP no faa as converses de tipos corretamente pode-se utilizar casts: (int), (float), (double), (string), (array), (object).

Concatenao de strings e interpolao de variveis

A concatenao de strings dada pelo smbolo operador .. Exemplo:


<? $nome = Joo; $cidade = Uberlndia; echo $nome. mora em .$cidade; ?>

A sada que este programa produz : Joo mora em Uberlndia.

Interpolao de variveis: interpolar variveis significa escrev-las umas dentro das outras. Para que se obtenha a mesma sada do cdigo acima, pode-se escrever o seguinte cdigo:
<? $nome = Joo; $cidade = Uberlndia; echo $nome mora em $cidade; ?>

Operadores: Aritmticos
Operador + Operao Adio Subtrao

* /
%

Multiplicao Diviso
Resto da diviso

Ateno: ^ no um operador vlido, para fazer operaes de potncia deve-se utilizar a funo pow: number pow (number base, number expoente)

Operadores: Binrios
Operador Operao

~x x&y
x|y x >> n x << n

Inverte os bits de x. Operao E (AND) bit a bit.


Operao OU (OR) bit a bit. Desloca x n bits direita. Desloca x n bits esquerda.

Operadores: Comparao
Operador x == y x >= y Operao Verifica se x igual a y. Verifica se x maior ou igual a y.

x <= y x != y ou x <> y
x>y x<y

Verifica se x menor ou igual a y. Verifica se x diferente de y.


Verifica se x maior que y. Verifica se x menor que y.

Operadores: Atribuio

Operador x=y x op= y

Operao Atribui o valor de y a x. Faz x op y e atribui o resultado a y, onde op qualquer operador aritmtico, binrio ou o operador de concatenao (.).

Operadores: Lgicos
Operador !x x && y x AND y x || y ou x OR y x XOR y Operao Verdadeiro se x falso. Verdadeiro se x e y forem verdade. Verdadeiro se x ou y so verdade. Verdadeiro se somente x ou somente y verdade.

Estruturas de controle if, else

Sintaxe do bloco if, else:


if (condio1) { bloco de instrues; } else if (condio2) instruo; else{ bloco de instrues; }

Estruturas de controle switch

Sintaxe do bloco switch:


switch (operador){ case valor1: bloco de instrues; break; case valor2: bloco de instrues; break; default: bloco de instrues; break; }

Estruturas de controle while, do while, for

Sintaxe do bloco while:


while (condio) { bloco de instrues; }

Sintaxe do do while:
do{ bloco de instrues; } while (condio);

Sintaxe do for:
for (inicializao; condio; operao){ bloco de instrues; }

Exerccio

Faa o PHP gerar o seguinte texto na tela utilizando estruturas de controle, strings, inteiros, e operaes entre esses. 0 + 5 = 5 1 + 6 = 7 2 + 7 = 9 3 + 8 = 11 4 + 9 = 13 Exemplo para a primeira: $a = 0; $b = 5; $a + $b = 5.

Note que o segundo operando o primeiro somado em 5 unidades.

Resposta
<html> <body> <?php for ($i = 0; $i < 5; $i++){ $a = $i; $b = "".($i + 5); echo "$a + $b = ". ($a + $b) . "<br />"; } ?> </body> </html>

Bibliografia

Juliano Niederauer. Desenvolvendo websites com PHP. 2004. www.php.net