Download - Minicurso PHP básico
Cezar Junior de Souza
Centro de Residência em Software - Unochapecó
● 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.
O que é?
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.
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.
-No entanto, quanto o servidor web recebe um pedido HTTP para um ficheiro PHP, porExemplo:
GET /test.php HTTP/1.0
o servidor interpreta o conteúdo de test.php e envia o resultado para o requisitante.
Server-side Scripting com uso de PHP
-Por exemplo, se test.php no servidor contiver:
<html><body>
<?phpecho “ Hello World";
?></body></html>
Server-side Scripting com uso de PHP
- O HTML resultante é:
Server-side Scripting com uso de PHP
<html><body>
Hello world</body>
</html>
Delimitando o código PHP
<?php comandos
?>
<script language="php">comandos
</script>
<?comandos
?>
<%comandos
%>
O código PHP fica embutido no próprio HTML. O interpretador identifica quando um código é PHP pelas seguintes tags:
Separador de instruções
Entre cada instrução em PHP é preciso utilizar o ponto-e-ví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.
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.
Variáveis
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'; */
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:
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>
Tipos de variáveis Suportados
●Inteiro●Ponto flutuante●String●Array●Objeto
PHP suporta os seguintes tipos de dados:
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.
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.
StringsExemplo:
<?php$teste = "Curso PHP";$var = '---$teste--';echo "$var";
?>
A saída desse script será "---$teste--".
Strings
Exemplo:
<?php$teste = "Curso PHP";$var = "---$teste---";echo "$var";
?>
A saída desse script será "---Curso PHP--".
ArraysArrays 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;
?>
Também pode-se escrever:
<?php$cor = array(1 => "vermelho, 2 => "verde, 3 => "azul", "teste” => 1);
?>
Arrays
Operadores
Aritméticos:
Adição +
Subtração -
Multiplicação *
Divisão /
Módulo %
Operadores
Strings:
Só há um operador exclusivo para strings:
. concatenação
OperadoresAtribuiçã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
Comparação
== igual a
!= diferente de
< menor que
> maior que
<= menor ou igual a
>= maior ou igual a
Comandos de seleção
if ($x == $y){comando1;comando2;
}//ouif ($x == $y)
comando1;//ouif ($x == $y) :
comando1;comando2;
endif;
Sintaxe:
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>
Comandos de Repetição
Sintaxe:while (<expressao>)
<comando>;
while (<expressao>){<comando>;
. . .<comando>;
}
while (<expressao>):<comando>;
. . .<comando>;
endwhile;
Comandos de Repetição
Exemplo:
while($i < 10){echo 'Nome:<input type=\”text\”><br>';
$i++;
}
Comandos de RepetiçãoSintaxe:for (<inicializacao>;<condicao>;<incremento>)
<comando>;
ou
for (<inicializacao>;<condicao>;<incremento>){<comando>;
}
oufor (<inicializacao>;<condicao>;<incremento>) :
<comando>;. . .<comando>;
endfor;
Comandos de Repetição
Exemplo:
for($i = 0; $i <= 10; $i++) {
echo $i.'<br>';
}
Comandos de Repetição
$vetor = array(“a”,”b”,”c”,”d”);foreach($vetor as $v) {
echo $v;}
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()
Sessões
Adicionar valores a uma váriavel de sessão:
$_SESSION['nome_da_variavel'] = 1;
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)”
Banco de DadosConexã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);
Banco de DadosExecuçã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 consultasescritas 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);
Banco de Dados
Execução de queries SQL
Delete:
$sql = "DELETE FROM t_acessorio WHERE ac_codigo = $_GET[codigo]";
pg_query($sql);
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);
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>';}
Exercício