1. Introdução ao PHP
Prof. Mauricio Garcia Nascimento
Prof. Daniel Arndt Alves
Introdução ao Desenvolvimento de Sistemas Web com PHP
Programa de Verão IME-USP 2014
2. Arquivo PHP
Extensão do script: php (convenção)
“Tag” do PHP
Pode ser inserida em qualquer posição do script,
quantas vezes for necessário
<?php
...
/* código */
...
?>
!2
Introdução ao Desenvolvimento de Sistemas Web com PHP - Programa de Verão IME-USP 2014
Prof. Mauricio Garcia Nascimento - mauricio@ime.usp.br - todos os direitos reservados
Prof. Daniel Arndt Alves – progdan@progdan.pro.br
4. Requisição do script PHP
Requisição: http://servidor/ola.php
Resposta: código HTML
ola.php
<html>
<body>
<html>
<body>
<?php
echo "Ola Mundo";
?>
Ola Mundo
!
!
!
!
</body>
</html>
</body>
</html>
!4
Introdução ao Desenvolvimento de Sistemas Web com PHP - Programa de Verão IME-USP 2014
Prof. Mauricio Garcia Nascimento - mauricio@ime.usp.br - todos os direitos reservados
Prof. Daniel Arndt Alves – progdan@progdan.pro.br
5. Tipos de dados
Básicos
Lógico (boolean)
Inteiro (int)
Decimal (float)
Texto (string)
!
Especiais / Compostos
Vetor (array)
Objeto
Recurso
NULO
!5
Introdução ao Desenvolvimento de Sistemas Web com PHP - Programa de Verão IME-USP 2014
Prof. Mauricio Garcia Nascimento - mauricio@ime.usp.br - todos os direitos reservados
Prof. Daniel Arndt Alves – progdan@progdan.pro.br
6. Tipo inteiro: representações
Decimal
10, 20, -2
Exponencial
2E7, 5E-8
Octal
0135, 0777, 053
Hexadecimal
0xFA, -0x10
!6
Introdução ao Desenvolvimento de Sistemas Web com PHP - Programa de Verão IME-USP 2014
Prof. Mauricio Garcia Nascimento - mauricio@ime.usp.br - todos os direitos reservados
Prof. Daniel Arndt Alves – progdan@progdan.pro.br
7. Tipo Lógico: representações
true
false
número ≠ 0
número 0
string não vazia
string vazia
string “0”
!7
Introdução ao Desenvolvimento de Sistemas Web com PHP - Programa de Verão IME-USP 2014
Prof. Mauricio Garcia Nascimento - mauricio@ime.usp.br - todos os direitos reservados
Prof. Daniel Arndt Alves – progdan@progdan.pro.br
8. Variáveis
Regras de formação do nome
“$” seguido de uma letra, e opcionalmente de uma sequência de
letras e números
!
$Nome = 'abc';
$AUX2 = 10.5;
$flag = false;
$_cont1_aux = 1;
!
Boa prática
Nome de variáveis sempre em minúsculo
!8
Introdução ao Desenvolvimento de Sistemas Web com PHP - Programa de Verão IME-USP 2014
Prof. Mauricio Garcia Nascimento - mauricio@ime.usp.br - todos os direitos reservados
Prof. Daniel Arndt Alves – progdan@progdan.pro.br
9. Variáveis no PHP
Não são tipadas
Não são declaradas
$Nome = 'abc';
$AUX2 = 10.5;
$flag = false;
$_cont1_aux = 1;
!
São case-sensitive
$Nome ≠ $nome ≠ $NOME
!9
Introdução ao Desenvolvimento de Sistemas Web com PHP - Programa de Verão IME-USP 2014
Prof. Mauricio Garcia Nascimento - mauricio@ime.usp.br - todos os direitos reservados
Prof. Daniel Arndt Alves – progdan@progdan.pro.br
10. Constantes
Formação do nome
regra semelhante às variáveis, sem o $
Boa prática
nome em maiúsculo
!
!
define('NOME', 'abc');
define('VERDADEIRO', true);
!
echo NOME;
if (VERDADEIRO) …
!10
Introdução ao Desenvolvimento de Sistemas Web com PHP - Programa de Verão IME-USP 2014
Prof. Mauricio Garcia Nascimento - mauricio@ime.usp.br - todos os direitos reservados
Prof. Daniel Arndt Alves – progdan@progdan.pro.br
11. Comentários no PHP
<html>
<body>
<?php
//comentário
!
# outro comentário
!
Comentários no PHP são
enviados ao browser?
echo "<b>Ola Mundo</b>";
/*
várias linhas
de comentário
*/
?>
</body>
</html>
!11
Introdução ao Desenvolvimento de Sistemas Web com PHP - Programa de Verão IME-USP 2014
Prof. Mauricio Garcia Nascimento - mauricio@ime.usp.br - todos os direitos reservados
Prof. Daniel Arndt Alves – progdan@progdan.pro.br
12. Operadores
Atribuição
$nome = 'abc';
Aritméticos
+
-
/
*
%
Incremento / Decremento
Concatenador de strings
$a + $b
$c / 10
10 % 3
$a++
++$a
$b-$str = 'a' . 'b';
echo $str;
//'ab’
!12
Introdução ao Desenvolvimento de Sistemas Web com PHP - Programa de Verão IME-USP 2014
Prof. Mauricio Garcia Nascimento - mauricio@ime.usp.br - todos os direitos reservados
Prof. Daniel Arndt Alves – progdan@progdan.pro.br
13. Função sprintf
str sprintf (str $format [, mix $args])
<?php
$base = 10;
$altura = 2.5;
$area = $base * $altura / 2;
!
echo sprintf('Área igual a <b>%.2f</b>', $area);
!
echo sprintf('O valor da %s é %d', 'soma', 10);
?>
Outros formatos em http://php.net/sprintf
!13
Introdução ao Desenvolvimento de Sistemas Web com PHP - Programa de Verão IME-USP 2014
Prof. Mauricio Garcia Nascimento - mauricio@ime.usp.br - todos os direitos reservados
Prof. Daniel Arndt Alves – progdan@progdan.pro.br
14. Operadores
Atribuição-aritmético
+=
-=
/=
*=
%=
!
!
Referência
$a += 2;
$b /= 3;
// $a = $a+2;
// $b = $b/3;
&
$a = 10;
$b = $a;
$c = &$a;
$b++;
$c++;
Atribuição por valor
!
Atribuição por referência
!
//$a, $b, $c ??
!14
Introdução ao Desenvolvimento de Sistemas Web com PHP - Programa de Verão IME-USP 2014
Prof. Mauricio Garcia Nascimento - mauricio@ime.usp.br - todos os direitos reservados
Prof. Daniel Arndt Alves – progdan@progdan.pro.br
16. Operadores lógicos
&&
and
E
||
or
Ou
Negação
!
if ($a == 10 && $b) ...
echo !$a;
!16
Introdução ao Desenvolvimento de Sistemas Web com PHP - Programa de Verão IME-USP 2014
Prof. Mauricio Garcia Nascimento - mauricio@ime.usp.br - todos os direitos reservados
Prof. Daniel Arndt Alves – progdan@progdan.pro.br
17. Estruturas condicionais
if (condição) {
…
}
if ($a < 5) {
echo 'Menor que 5';
}
if (condição) {
…
} else {
…
}
if ($a < 5) {
echo 'Menor que 5';
} else {
echo 'Maior ou igual a 5';
}
!17
Introdução ao Desenvolvimento de Sistemas Web com PHP - Programa de Verão IME-USP 2014
Prof. Mauricio Garcia Nascimento - mauricio@ime.usp.br - todos os direitos reservados
Prof. Daniel Arndt Alves – progdan@progdan.pro.br
18. Estruturas condicionais
if (condição) {
…
} else if (condição2) {
…
}
else {
…
}
!18
if ($a < 5) {
echo 'Menor que 5';
} else if ($a > 5) {
echo 'Maior que 5';
} else {
echo 'Igual a 5';
}
Introdução ao Desenvolvimento de Sistemas Web com PHP - Programa de Verão IME-USP 2014
Prof. Mauricio Garcia Nascimento - mauricio@ime.usp.br - todos os direitos reservados
Prof. Daniel Arndt Alves – progdan@progdan.pro.br
19. Estruturas condicionais
Operador condicional ternário
if ($a == 5)
echo 'sim';
else
echo 'não’;
Operador ternário
echo $a == 5 ? 'sim' : 'não’;
!19
Introdução ao Desenvolvimento de Sistemas Web com PHP - Programa de Verão IME-USP 2014
Prof. Mauricio Garcia Nascimento - mauricio@ime.usp.br - todos os direitos reservados
Prof. Daniel Arndt Alves – progdan@progdan.pro.br
20. Estruturas condicionais
switch (expressão) {
case 'val1':
//comandos
break;
!
case 'val2':
//comandos
break;
!
“else”
default:
//comandos
break;
}
!20
Introdução ao Desenvolvimento de Sistemas Web com PHP - Programa de Verão IME-USP 2014
Prof. Mauricio Garcia Nascimento - mauricio@ime.usp.br - todos os direitos reservados
Prof. Daniel Arndt Alves – progdan@progdan.pro.br
21. Estruturas de repetição
while (condição) {
…
}
do {
…
} while (condição);
for ($i=0; $i<10; $i++) {
…
}
!21
Introdução ao Desenvolvimento de Sistemas Web com PHP - Programa de Verão IME-USP 2014
Prof. Mauricio Garcia Nascimento - mauricio@ime.usp.br - todos os direitos reservados
Prof. Daniel Arndt Alves – progdan@progdan.pro.br
22. Estruturas de repetição
Controle do fluxo de execução
break
continue
$i = 0;
while ($i<10) {
if (++$i == 5)
break;
!
$i = 0;
while ($i<10) {
if (++$i == 5)
continue;
!
echo $i.'<br />';
}
!22
echo $i.'<br />';
}
Introdução ao Desenvolvimento de Sistemas Web com PHP - Programa de Verão IME-USP 2014
Prof. Mauricio Garcia Nascimento - mauricio@ime.usp.br - todos os direitos reservados
Prof. Daniel Arndt Alves – progdan@progdan.pro.br