O documento descreve as principais características da linguagem PHP: (1) PHP é uma linguagem de script do lado do servidor usada para gerar conteúdo dinâmico na web; (2) Sua história começou em 1994 e foi criada por Rasmus Lerdorf inicialmente para gerenciar sua página pessoal; (3) PHP permite a interação com banco de dados, uso de variáveis, loops, condicionais e outros recursos para desenvolvimento de sites dinâmicos.
1. Cezar Junior de Souza
Centro de Residência em Software - Unochapecó
2. O que é?
●
PHP (um acrônimo recursivo para "PHP: Hypertext
Preprocessor", originalmente Personal Home Page.)
é uma linguagem interpretada livre e muito utilizada
para gerar conteúdo dinâmico na World Wide Web,
permite criar sites WEB dinâmicos, possibilitando
uma interação com o usuário através de
formulários, parâmetros da URL e links.
3. História
●
A linguagem surgiu por volta de 1994, como
um pacote de programas CGI criados por
Rasmus Lerdorf, com o nome Personal Home
Page Tools, para substituir um conjunto de
scripts Perl que ele usava no desenvolvimento
de sua página pessoal. Em 1997 foi lançado o
novo pacote da linguagem com o nome de
PHP/FI, trazendo a ferramenta Forms
Interpreter, um interpretador de comandos
SQL.
4. Server-side Scripting com uso de PHP
- PHP é uma server-side scripting language.
•
-Quando um servidor web recebe um pedido HTTP como:
GET /index.html HTTP/1.0
o conteúdo do ficheiro index.html é retornado ao
requisitante.
5. Server-side Scripting com uso de PHP
-No entanto, quanto o servidor web recebe um pedido
HTTP para um ficheiro PHP, por
Exemplo:
GET /test.php HTTP/1.0
o servidor interpreta o conteúdo de test.php e envia o
resultado para o requisitante.
6. Server-side Scripting com uso de PHP
-Por exemplo, se test.php no servidor contiver:
<html>
<body>
<?php
echo “ Hello World";
?>
</body>
</html>
7. Server-side Scripting com uso de PHP
- O HTML resultante é:
<html>
<body>
Hello world
</body>
</html>
8. Delimitando o código PHP
O código PHP fica embutido no próprio HTML. O
interpretador identifica quando um código é PHP pelas
seguintes tags:
<?php
comandos
?>
<script language="php">
comandos
</script>
<?
comandos
?>
<%
comandos
%>
9. Separador de instruções
Entre cada instrução em PHP é preciso utilizar o ponto-evírgula, assim como em C e outras linguagens mais
conhecidas. Na última instrução do bloco de script não é
necessário o uso do ponto-e-vírgula, mas por questões
estéticas recomenda-se o uso sempre.
10. Variáveis
Toda variável em PHP tem seu nome composto pelo caracter
$ e uma string, que deve iniciar por uma letra ou o caracter
"_". PHP é case sensitive, ou seja, as variáveis $costa e
$cOsta são diferentes. Por isso é preciso ter muito cuidado ao
definir os nomes das variáveis. É bom evitar os nomes em
maiúsculas, pois como veremos mais adiante, o PHP já
possui alguma variáveis pré-definidas cujos nomes são
formados por letras maiúsculas.
11. Comentários
Comentários de uma linha:
Pode ser delimitado pelo caracter "#" ou por duas barras ( // ).
Exemplo:
echo 'hello world'; //Exibe a mensagem hello world
Comentários de mais de uma linha:
Tem como delimitadores os caracteres "/*" para o início do bloco
e "*/" para o final do comentário.
Exemplo:
/*
echo 'vai da erro';
echo 'go'; */
12. Formulários com PHP e HTML
Ao clicar num botão "Submit" em um formulário HTML as
informações dos campos serão enviadas ao servidor
especificado para que possa ser produzida uma resposta. O
PHP trata esses valores como variáveis, cujo nome é o nome do
campo definido no formulário. O exemplo a seguir mostra isso, e
mostra também como o código PHP pode ser inserido em
qualquer parte do código HTML:
13. Formulários com PHP e HTML
<html>
<head><title>Index</title></head>
<body>
<?php
if ($_POST['texto'] != "")
echo "Você digitou".$_POST['texto']."<br><br>";
?>
<form method=post action="index">
<input type="text" name="texto" value="" size=10>
<br>
<input type="submit" name="sub" value="Enviar!">
</form>
</body>
</html>
14. Tipos de variáveis Suportados
PHP suporta os seguintes tipos de dados:
Inteiro
●Ponto flutuante
●String
●Array
●Objeto
●
PHP utiliza checagem de tipos dinâmica, ou seja, uma variável pode
conter valores de diferentes tipos em diferentes momentos da
execução do script. Por este motivo não é necessário declarar o
tipo de uma variável para usá-la. O interpretador PHP decidirá qual
o tipo daquela variável, verificando o conteúdo em tempo de
execução.
15. Strings
Strings podem ser atribuídas de duas maneiras:
utilizando aspas simples ( ' ) – Desta maneira, o valor da
variável será exatamente o texto contido entre as aspas
(com exceção de e ' – ver tabela abaixo) utilizando
aspas duplas ( " ) – Desta maneira, qualquer variável ou
caracter de escape será expandido antes de ser
atribuído.
18. Arrays
Arrays em PHP podem ser observados como
mapeamentos ou como vetores indexados. Mais
precisamente, um valor do tipo array é um dicionário onde
os índices são as chaves de acesso. Vale ressaltar que os
índices podem ser valores de qualquer tipo e não somente
inteiros.
<?php
$cor[1] = "vermelho";
$cor[2] = "verde";
$cor[3] = "azul";
$cor["teste"] = 1;
?>
22. Operadores
Atribuição:
=
atribuição simples
+=
atribuição com adição
-=
atribuição com subtração
*=
atribuição com multiplicação
/=
atribuição com divisão
%=
atribuição com módulo
.=
atribuição com concatenação
Exemplo:
$a = 7;
$a += 2; // $a passa a conter o valor 9
24. Comandos de seleção
Sintaxe:
if ($x == $y){
comando1;
comando2;
}
//ou
if ($x == $y)
comando1;
//ou
if ($x == $y) :
comando1;
comando2;
endif;
25. Comandos de seleção
Exemplo:
<form action="" method="post">
<label>Nome:</label><input type="text" name="nome" /><br />
<label>Idade:</label><input type="text" name="idade" /><br />
<input type="submit" value="Enviar" />
<?php
if (($_POST['nome']) && ($_POST['idade'])){
$idade = 18;
if($_POST['idade'] >= $idade){
echo $_POST['nome'].' é de maior';
}else{
echo $_POST['nome'].' é de menor';
}
}
?>
</form>
26. Comandos de Repetição
Sintaxe:
while (<expressao>)
<comando>;
while (<expressao>){
<comando>;
...
<comando>;
}
while (<expressao>):
<comando>;
...
<comando>;
endwhile;
28. Comandos de Repetição
Sintaxe:
for (<inicializacao>;<condicao>;<incremento>)
<comando>;
ou
for (<inicializacao>;<condicao>;<incremento>){
<comando>;
}
ou
for (<inicializacao>;<condicao>;<incremento>) :
<comando>;
...
<comando>;
endfor;
31. Sessões
Váriaveis de sessões são armazenadas no próprio servidor,
diferente dos cookies, e não expiram a menos que o
programador queira apagar a sessão. Existem algumas
funções que controlam sessões, as mais usadas são:
Session_start()
session_destroy()
session_unset()
33. Sessões
Exercício:
●
Fazer uma tela de login, onde se houver valor
nos campos login e senha startar a sessão,
gravar o nome do usuário em uma váriavel de
sessão e redirecionar para um outro arquivo
exibindo a mensagem:
“Bem Vindo (Nome)”
34. Banco de Dados
Conexão com o servidor
A conexão com o servidor de banco de dados
postgres em PHP é feita através do comando
pg_connect, que tem a seguinte sintaxe:
$str_conexao="host=servidor dbname=nomedobanco port=5432
user=nome do usuário password=senha do usuário";
$conexao = pg_connect($str_conexao);
35. Banco de Dados
Execução de queries SQL
Após estabelecida a conexão e selecionada a base de
dados a ser utilizada, quase toda a interação com o
servidor postgres pode ser feita através de consultas
escritas em SQL (Structured Query Language), com o
comando pg_query, que utiliza a seguinte sintaxe:
Inserção:
$sql = "INSERT INTO t_acessorio (ac_descricao) VALUES
('$acessorio')";
pg_query($sql);
36. Banco de Dados
Execução de queries SQL
Delete:
$sql = "DELETE FROM t_acessorio WHERE ac_codigo =
$_GET[codigo]";
pg_query($sql);
37. Banco de Dados
Execução de queries SQL
Update:
$sql = "UPDATE t_acessorio SET ac_descricao = $acessorio
WHERE ac_codigo = $_GET[codigo]";
pg_query($sql);
38. Banco de Dados
Execução de queries SQL
Pegar dados:
$sql = 'SELECT * FROM t_acessorio';
$dados = pg_fetch_all(pg_query($sql));
foreach($dados as $d){
echo $d[ac_descricao].'<br>';
}