UA10 — PHP: Introdução
PHP é uma linguagem de script server-side que gera HTML dinamicamente no servidor. É a base do desenvolvimento web back-end em ambiente LAMP/XAMPP e motor de sistemas como WordPress.
O que é PHP?
PHP (PHP: Hypertext Preprocessor) é uma linguagem de script server-side de tipagem fraca e dinâmica. Os arquivos PHP usam a extensão .php e são executados no servidor, não no navegador. O código PHP fica entre as tags <?php e ?>.
XAMPP — ambiente de desenvolvimento local
O XAMPP é um pacote de software livre desenvolvido pela Apache Friends que permite rodar um servidor web localmente sem necessidade de internet. O nome é acrônimo:
| Letra | Componente |
|---|---|
| X | Cross-platform — funciona em Windows, Linux e macOS |
| A | Apache — servidor web |
| M | MySQL / MariaDB — banco de dados |
| P | PHP — linguagem de script server-side |
| P | Perl — linguagem de script adicional |
Os arquivos PHP ficam em c:\xampp\htdocs (Windows) e são acessados via http://localhost/pasta/arquivo.php.
Variáveis
Toda variável começa com $. O PHP tem tipagem fraca — o tipo muda automaticamente conforme o contexto.
// Declaração e tipagem dinâmica
$nome = "Ana"; // string
$idade = 30; // integer
$preco = 9.99; // float
$ativo = true; // boolean
// Regras: inicia com letra ou _; case-sensitive; sem espaços
$meu_nome = "Carlos"; // válido
$MeuNome = "outro"; // variável diferente de $meu_nome
Superglobais
Variáveis nativas disponíveis em qualquer parte do código, sem precisar declarar:
| Superglobal | Conteúdo |
|---|---|
$GLOBALS | Todas as variáveis do escopo global |
$_SERVER | Informações do servidor e ambiente de execução |
$_GET | Dados enviados pelo método HTTP GET (visíveis na URL) |
$_POST | Dados enviados pelo método HTTP POST (não visíveis na URL) |
$_FILES | Arquivos enviados via POST |
$_COOKIE | Valores dos cookies HTTP |
$_SESSION | Variáveis de sessão do usuário |
$_REQUEST | Contém $_GET + $_POST + $_COOKIE |
$_ENV | Variáveis de ambiente do sistema |
Constantes
Constantes mantêm o valor fixo durante toda a execução. Por convenção, usam letras maiúsculas. Não levam $.
// define() — disponível desde as primeiras versões
define("PI", 3.14159);
// const — disponível desde PHP 5.3 em escopo global
const VERSAO = "1.0";
echo PI; // 3.14159
echo VERSAO; // 1.0
Constantes Mágicas
Constantes predefinidas cujo valor muda conforme onde são usadas:
| Constante | Retorna |
|---|---|
__LINE__ | Número da linha atual no código |
__FILE__ | Caminho completo do arquivo |
__DIR__ | Diretório do arquivo |
__FUNCTION__ | Nome da função atual |
__CLASS__ | Nome da classe atual |
__TRAIT__ | Nome do trait atual |
__METHOD__ | Nome do método da classe |
__NAMESPACE__ | Nome do namespace atual |
var_dump() e phpinfo()
// var_dump — mostra tipo e valor; útil para depuração
$arr = [1, "dois", true];
var_dump($arr);
// array(3) { [0]=> int(1) [1]=> string(4) "dois" [2]=> bool(true) }
// phpinfo — exibe configuração completa do ambiente PHP
phpinfo(); // tudo (INFO_ALL)
phpinfo(INFO_GENERAL); // versão, servidor, SO
phpinfo(INFO_CONFIGURATION); // diretivas do php.ini
phpinfo(INFO_MODULES); // extensões carregadas
Operadores
| Tipo | Operadores | Descrição |
|---|---|---|
| Aritméticos | + - * / % ** | Soma, subtração, multiplicação, divisão, módulo, exponencial |
| Atribuição | = += -= .= | Atribuir valor; atribuir somando; atribuir concatenando |
| Comparação | == === != !== < > <= >= | == compara valor; === compara valor e tipo |
| Lógicos | && || ! and or xor | E, OU, NÃO, OU exclusivo |
| String | . .= | Concatena strings |
| Controle de erro | @ | Suprime erros da expressão seguinte |
| Incremento | ++ — | Pré/pós incremento e decremento |
Práticas Modernas — PHP e ambiente de desenvolvimento
PHP 8.x: versão atual com melhorias significativas — JIT compiler, union types, named arguments, match expression, nullsafe operator ?->, fibers (PHP 8.1).
Docker + DDEV / Laravel Sail: substituem o XAMPP em ambientes profissionais — cada projeto tem seu próprio container isolado, eliminando conflitos de versão.
Composer: gerenciador de dependências oficial do PHP — equivalente ao npm para JavaScript. Essencial para qualquer projeto moderno.
IDEs recomendadas: PhpStorm (pago, mais completo) ou VS Code com extensão PHP IntelliSense + PHP Debug.
=== em vez de ==: sempre prefira comparação estrita para evitar erros de tipo (ex.: "0" == false retorna true).
Dicas para a prova — UA10
- XAMPP: X=cross-platform, A=Apache, M=MySQL/MariaDB, P=PHP, P=Perl.
- Variáveis PHP começam com
$e são case-sensitive. - PHP tem tipagem fraca — o tipo é definido automaticamente conforme o valor atribuído.
- Superglobais estão disponíveis em qualquer lugar do código sem declaração.
$_GET= dados visíveis na URL;$_POST= dados ocultos (não aparecem na URL).- Constantes não levam
$; por convenção usam LETRAS_MAIÚSCULAS. define()pode ser usada em qualquer escopo;constrequer PHP 5.3+ para escopo global.var_dump()mostra tipo e valor — indispensável para depuração.phpinfo()sem parâmetros exibe tudo (INFO_ALL).
Referências bibliográficas desta UA
- Saraiva, M. O.; Barreto, J. S. Desenvolvimento de Sistemas com PHP. Porto Alegre: SAGAH, 2018.