



























































Estude fácil! Tem muito documento disponível na Docsity
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Prepare-se para as provas
Estude fácil! Tem muito documento disponível na Docsity
Prepare-se para as provas com trabalhos de outros alunos como você, aqui na Docsity
Os melhores documentos à venda: Trabalhos de alunos formados
Prepare-se com as videoaulas e exercícios resolvidos criados a partir da grade da sua Universidade
Responda perguntas de provas passadas e avalie sua preparação.
Ganhe pontos para baixar
Ganhe pontos ajudando outros esrudantes ou compre um plano Premium
Comunidade
Peça ajuda à comunidade e tire suas dúvidas relacionadas ao estudo
Descubra as melhores universidades em seu país de acordo com os usuários da Docsity
Guias grátis
Baixe gratuitamente nossos guias de estudo, métodos para diminuir a ansiedade, dicas de TCC preparadas pelos professores da Docsity
Este documento fornece uma introdução à linguagem de programação php, abordando conceitos básicos, como variáveis, operadores de comparação, estruturas de controle e funções. Além disso, é apresentado o uso de arrays e a programação orientada a objetos em php.
O que você vai aprender
Tipologia: Notas de estudo
Compartilhado em 07/11/2022
4.4
(172)415 documentos
1 / 67
Esta página não é visível na pré-visualização
Não perca as partes importantes!
Capítulo 1
Introdução ao PHP
Ao longo deste livro utilizaremos diversas funções, comandos e estruturas de con-
trole básicos da linguagem PHP, que apresentaremos neste capítulo. Conheceremos
as estruturas básicas da linguagem, suas variáveis e seus operadores e também um
conjunto de funções para manipulação de arquivos, arrays, bancos de dados, entre
outros.
1.1 O que é o PHP?
A linguagem de programação PHP, cujo logotipo vemos na Figura 1.1, foi criada no
outono de 1994 por Rasmus Lerdorf. No início era formada por um conjunto de
scripts voltados à criação de páginas dinâmicas que Rasmus utilizava para monitorar
o acesso ao seu currículo na internet. À medida que essa ferramenta foi crescendo em
funcionalidades, Rasmus teve de escrever uma implementação em C, a qual permitia
às pessoas desenvolverem de forma muito simples suas aplicações para web. Rasmus
nomeou essa versão de PHP/FI (Personal Home Pages/Forms Interpreter) e decidiu
disponibilizar seu código na web, em 1995, para compartilhar com outras pessoas,
bem como receber ajuda e correção de bugs.
Em novembro de 1997 foi lançada a segunda versão do PHP. Naquele momento,
aproximadamente 50 mil domínios ou 1% da internet já utilizava PHP. No mesmo
ano, Andi Gutmans e Zeev Suraski, dois estudantes que utilizavam PHP em um
projeto acadêmico de comércio eletrônico, resolveram cooperar com Rasmus para
Extensão Significado .php Arquivo PHP contendo um programa. .class.php Arquivo PHP contendo uma classe. .inc.php Arquivo PHP a ser incluído, pode incluir constantes ou configurações.
Entretanto, outras extensões podem ser encontradas principalmente em progra-
mas antigos:
Extensão Significado .php3 Arquivo PHP contendo um programa PHP versão 3. .php4 Arquivo PHP contendo um programa PHP versão 4. .phtml Arquivo PHP contendo um programa PHP e HTML na mesma página.
O código de um programa escrito em PHP deve estar contido entre os seguintes
delimitadores:
Observação: os comandos sempre são delimitados por ponto-e-vírgula (;).
Para comentar uma única linha:
// echo "a";
Para comentar muitas linhas:
/* echo "a"; echo "b"; */
Estes são os comandos utilizados para gerar uma saída em tela (output). Se o pro-
grama PHP for executado na linha de comando (prompt do sistema), a saída será no
próprio console. No entanto, se o programa for executado via servidor de páginas
web (Apache ou IIS), a saída será exibida na própria página HTML gerada.
echo
É um comando que imprime uma ou mais variáveis no console. Exemplo:
echo 'a', 'b', 'c';
abc
É uma função que imprime uma string no console. Exemplo:
print('abc');
abc
var_dump
Imprime o conteúdo de uma variável de forma explanativa, muito comum para se realizar debug. Se o parâmetro for um objeto, ele imprimirá todos os seus atributos; se for um array de várias dimensões, imprimirá todas elas, com seus respectivos conteúdos e tipos de dados. Exemplo:
$vetor = array('Palio', 'Gol', 'Fiesta', 'Corsa'); var_dump($vetor);
array(4) { [0]=> string(5) "Palio" [1]=> string(3) "Gol" [2]=> string(6) "Fiesta" [3]=> string(5) "Corsa" }
print_r
Imprime o conteúdo de uma variável de forma explanativa, assim como a var_dump(), mas em um formato mais legível para o programador, com os conteúdos alinhados e suprimindo os tipos de dados. Exemplo:
$vetor = array('Palio', 'Gol', 'Fiesta', 'Corsa'); print_r($vetor);
O PHP é case sensitive , ou seja, é sensível a letras maiúsculas e minúsculas. Tome
cuidado ao declarar variáveis e nomes de função. Por exemplo, a variável $codigo é
tratada de forma totalmente diferente da variável $Codigo.
Em alguns casos, precisamos ter em nosso código-fonte nomes de variáveis que
podem mudar de acordo com determinada situação. Neste caso, não só o conteúdo
da variável é mutável, mas também seu nome. Para isso, o PHP implementa o con-
ceito de variáveis variantes ( variable variables ). Sempre que utilizarmos dois sinais
de cifrão ($) precedendo o nome de uma variável, o PHP irá referenciar uma variável
representada pelo conteúdo da primeira. Neste exemplo, utilizamos esse recurso
quando declaramos a variável $nome (conteúdo de $variavel) contendo ‘maria’.
// cria variável identificada pelo conteúdo de $variavel $$variavel = 'maria';// exibe variável $nome na tela echo $nome; // resultado = maria ?>
Quando uma variável é atribuída a outra, sempre é criada uma nova área de
armazenamento na memória. Veja neste exemplo que, apesar de $b receber o mesmo
conteúdo de $a, após qualquer modificação em $b, $a continua com o mesmo valor.
Para criar referência entre variáveis, ou seja, duas variáveis apontando para a
mesma região da memória, a atribuição deve ser precedida pelo operador &. Assim,
qualquer alteração em qualquer uma das variáveis reflete na outra.
26 PHP – Programando com Orientação a Objetos$b = 10; echo $a; // resultado = 10 echo $b; // resultado = 10 ?>
Um booleano expressa um valor lógico que pode ser verdadeiro ou falso. Para especi-
ficar um valor booleano, utilize as palavras-chave TRUE ou FALSE. No exemplo a seguir,
declaramos a variável booleana $exibir_nome, cujo conteúdo é TRUE (verdadeiro). Em
seguida, testaremos o conteúdo desta variável para verificar se ela é realmente verda-
deira. Caso positivo, será exibido na tela o nome “José da Silva”.
// testa se $exibir_nome é TRUE if ($exibir_nome) { echo 'José da Silva'; } ?>José da Silva
No programa que segue, criamos uma variável numérica contendo o valor 91. Em
seguida, testamos se a variável é maior que 90. Tal comparação também retorna um
valor booleano (TRUE ou FALSE). O conteúdo da variável $vai_chover é um boolean que
será testado logo em seguida para a impressão da string “Está chovendo”.
// testa se é maior que 90. Retorna um boolean $vai_chover = ($umidade > 90);// testa se $vai_chover é verdadeiro if ($vai_chover) { echo 'Está chovendo'; } ?>
Array é uma lista de valores armazenados na memória, os quais podem ser de tipos
diferentes (números, strings, objetos) e podem ser acessados a qualquer momento,
pois cada valor é relacionado a uma chave. Um array também pode crescer dinami-
camente com a adição de novos itens. Veja na seção Manipulação de arrays como
manipular arrays.
Um objeto é uma entidade com um determinado comportamento definido por seus
métodos (ações) e propriedades (dados). Para criar um objeto deve-se utilizar o ope-
rador new. Veja o exemplo de um objeto do tipo Computador e aprenda, no Capítulo 2,
como manipular classes e objetos.
cpu}..."; } }$obj = new Computador; $obj->cpu = "500Mhz"; $obj->ligar(); ?>
Ligando computador a 500Mhz...
Recurso (resource) é uma variável especial que mantém uma referência de recurso
externo. Recursos são criados e utilizados por funções especiais, como uma conexão
ao banco de dados. Um exemplo é a função mysql_connect(), que, ao conectar-se ao
banco de dados, retorna uma variável de referência do tipo recurso.
resource mysql_connect(...)
O tipo misto (mixed) representa múltiplos (não necessariamente todos) tipos de dados
em um mesmo parâmetro. Um parâmetro do tipo mixed indica que a função aceita
diversos tipos de dados como parâmetro. Um exemplo é a função gettype(), a qual
obtém o tipo da variável passada como parâmetro (que pode ser integer, string, array,
objeto, entre outros).
string gettype (mixed var)
Veja alguns resultados possíveis: "boolean" "integer" "double" "string" "array" "object" "resource" "NULL"
Algumas funções como call_user_func() aceitam um parâmetro que significa uma
função a ser executada. Este tipo de dado é chamado de callback. Um parâmetro
callback pode ser o nome de uma função representada por uma string ou o método
de um objeto a ser executado, representados por um array. Veja os exemplos na do-
cumentação da função call_user_func().
A utilização do valor especial NULL significa que a variável não tem valor. NULL é o único
valor possível do tipo NULL.
1.4 Constantes
Uma constante é um valor que não sofre modificações durante a execução do progra-
ma. Ela é representada por um identificador, assim como as variáveis, com a exceção
de que só pode conter valores escalares (boolean, inteiro, ponto flutuante e string). Um
valor escalar não pode ser composto de outros valores, como vetores ou objetos. As
regras de nomenclatura de constantes seguem as mesmas regras das variáveis, com a
exceção de que as constantes não são precedidas pelo sinal de cifrão ($) e geralmente
utilizam-se nomes em maiúsculo.
MAXIMO_CLIENTES // exemplo de constante
Em cálculos complexos, procure utilizar parênteses, sempre observando as prio-
ridades aritméticas. Por exemplo:
O PHP realiza automaticamente a conversão de tipos em operações:
Operadores relacionais são utilizados para realizar comparações entre valores ou
expressões, resultando sempre um valor boolean (TRUE ou FALSE).
Comparadores Descrição == Igual. Resulta verdadeiro (TRUE) se expressões forem iguais. === Idêntico. Resulta verdadeiro (TRUE) se as expressões forem iguais e do mesmo tipo de dados. != ou <> Diferente. Resulta verdadeiro se as variáveis forem diferentes. < Menor.
Maior que. <= Menor ou igual. = Maior ou igual.
Veja a seguir alguns testes lógicos e seus respectivos resultados. No primeiro caso,
vemos a utilização errada do operador de atribuição “=” para realizar uma compara-
ção: o operador sempre retorna o valor atribuído.
essa operação atribui 5 à variável $a e retorna verdadeiro
No exemplo que segue, declaramos duas variáveis, uma integer e outra string.
Neste caso, vemos a utilização dos operadores de comparação == e !=.
if ($a == $b) { echo '$a e $b são iguais'; } else if ($a != $b) { echo '$a e $b são diferentes'; } ?>$a e $b são iguais
No próximo caso, além da comparação entre as variáveis, comparamos também
os tipos de dados das variáveis.
if ($c === $d) { echo '$c e $d são iguais e do mesmo tipo'; } if ($c !== $d) { echo '$c e $d são de tipos diferentes'; } ?>$c e $d são de tipos diferentes
O PHP considera o valor zero como sendo falso em comparações lógicas. Para
evitar erros semânticos em retorno de valores calculados por funções que podem
No programa a seguir, se as variáveis $vai_chover e $esta_frio forem verdadeiras ao
mesmo tempo, será impresso no console “Não vou sair de casa”.
if ($vai_chover and $esta_frio) { echo "Não vou sair de casa"; } ?>Não vou sair de casa
Já neste outro programa, caso uma variável seja TRUE e a outra seja FALSE (OU ex-
clusivo), será impresso no console “Vou pensar duas vezes antes de sair”.
if ($vai_chover xor $esta_frio) { echo "Vou pensar duas vezes antes de sair"; } ?>Vou pensar duas vezes antes de sair
1.6 Estruturas de controle
O IF é uma estrutura de controle que introduz um desvio condicional, ou seja, um
desvio na execução natural do programa. Caso a condição dada pela expressão seja
satisfeita, então serão executadas as instruções do bloco de comandos. Caso a condição
não seja satisfeita, o bloco de comandos será simplesmente ignorado. O comando IF
pode ser lido como “SE ( expressão ) ENTÃO { comandos ... }”.
ELSE é utilizado para indicar um novo bloco de comandos delimitado por { }, caso
a condição do IF não seja satisfeita. Pode ser lido como “caso contrário”. A utilização
do ELSE é opcional.
Veja a seguir um fluxograma explicando o funcionamento do comando IF. Caso
a avaliação da expressão seja verdadeira, o programa parte para execução de um
bloco de comandos; caso seja falsa, parte para a execução do bloco de comandos
dada pelo ELSE.
Figura 1.2 – Fluxo do comando IF.
if ( expressão ) { comandos se expressão é verdadeira ; } else { comandos se expressão é falsa ; }
Exemplo:
não é igual
Quando não explicitamos o operador lógico em testes por meio do IF, o comporta-
mento-padrão do PHP é retornar TRUE sempre que a variável tiver conteúdo válido.
if ($valor_venda > 100) { $resultado = 'muito caro'; } else { $resultado = 'pode comprar'; }
O mesmo código poderia ser escrito em uma única linha da seguinte forma:
$resultado = ($valor_venda > 100)? 'muito caro' : 'pode comprar';
A primeira expressão é a condição a ser avaliada; a segunda é o valor atribuído
caso ela seja verdadeira; e a terceira é o valor atribuído caso ela seja falsa.
O WHILE é uma estrutura de controle similar ao IF. Da mesma forma, possui uma condição
para executar um bloco de comandos. A diferença primordial é que o WHILE estabelece
um laço de repetição, ou seja, o bloco de comandos será executado repetitivamente
enquanto a condição de entrada dada pela expressão for verdadeira. Este comando
pode ser interpretado como “ENQUANTO (expressão) FAÇA {comandos... }.”.
A Figura 1.3 procura explicar o fluxo de funcionamento do comando WHILE. Quando
a expressão é avaliada como TRUE, o programa parte para a execução de um bloco de
comandos. Quando do fim da execução deste bloco de comandos, o programa retor-
na ao ponto inicial da avaliação e, se a expressão continuar verdadeira, o programa
continua também com a execução do bloco de comandos, constituindo um laço de
repetições, o qual só é interrompido quando a expressão avaliada retornar um valor
falso (FALSE).
Figura 1.3 – Fluxo do comando WHILE.
while ( expressão ) { comandos; }
No exemplo a seguir, o comando WHILE está avaliando a expressão “se $a é menor
que 5” como ponto de entrada do laço de repetições. Na primeira vez que é executada
esta comparação, é retornado TRUE, visto que o valor de $a é 1. Logo o programa entra
no laço de repetições executando os comandos entre { }. Observe que, dentro do
bloco de comandos, a variável $a é incrementada. Assim, esta execução perdurará por
mais algumas iterações. Quando seu valor for igual a 5, a comparação retornará FALSE
e não mais entrará no WHILE, deixando de executar o bloco de comandos.
O FOR é uma estrutura de controle que estabelece um laço de repetição baseado em
um contador; é muito similar ao comando WHILE. O FOR é controlado por um bloco de
três comandos que estabelecem uma contagem, ou seja, o bloco de comandos será
executado um certo número de vezes.
for ( expr1 ; expr2 ; expr3 ) { comandos }
Parâmetros Descrição expr1 Valor inicial da variável contadora. expr2 Condição de execução. Enquanto for TRUE, o bloco de comandos será executado. expr3 Valor a ser incrementado após cada execução.