PHP é muito usado em sites, mas também roda direto no terminal pelo comando php. O
código fica depois da abertura <?php.
Testar sem instalar nada
No OnlinePHP, cole o código e clique em Execute Code. No 3v4l.org, o mesmo código roda em várias versões do PHP de uma vez.
Instalar
Linux (Debian/Ubuntu)
sudo apt install php-cli
php --version
A versão do apt pode não ser a mais recente. Para instalar a última versão do
PHP no Debian ou no Ubuntu, veja o passo a passo do
PHP.Watch
(site da comunidade, não do projeto PHP), que usa o repositório de pacotes mantido
por Ondřej Surý.
Windows
Baixe o .zip em windows.php.net/download,
extraia (por exemplo, em C:\php) e adicione a pasta ao PATH do Windows. Num
terminal novo, confira com php --version.
Executar um arquivo
Exemplo básico: Olá, mundo!
Salve como hello.php. Este programa mostra uma mensagem no terminal.
<?php
declare(strict_types=1);
echo "Olá, mundo!", PHP_EOL;
Na pasta do arquivo, execute no Linux ou Windows:
php hello.php
Saída esperada:
Olá, mundo!
Calcular uma compra com desconto
Salve o programa como main.php. O programa multiplica o preço pela quantidade e aplica o desconto.
fgets(STDIN) lê cada linha e filter_var valida os números. Use ponto nos
decimais. É um cálculo didático com float; em sistemas financeiros reais, use
centavos inteiros ou aritmética decimal.
<?php
declare(strict_types=1);
echo "Preço unitário (ex.: 50.00):\n";
$price = filter_var(trim(fgets(STDIN) ?: ''), FILTER_VALIDATE_FLOAT);
if ($price === false || !is_finite($price) || $price <= 0) {
fwrite(STDERR, "Preço inválido: use um número positivo.\n");
exit(1);
}
echo "Quantidade de produtos:\n";
$quantity = filter_var(trim(fgets(STDIN) ?: ''), FILTER_VALIDATE_INT);
if ($quantity === false || $quantity <= 0) {
fwrite(STDERR, "Quantidade inválida: use um inteiro positivo.\n");
exit(1);
}
echo "Desconto em porcentagem (0 a 100):\n";
$discount = filter_var(trim(fgets(STDIN) ?: ''), FILTER_VALIDATE_FLOAT);
if ($discount === false || !is_finite($discount) || $discount < 0 || $discount > 100) {
fwrite(STDERR, "Desconto inválido: use um valor de 0 a 100.\n");
exit(1);
}
$subtotal = $price * $quantity;
if (!is_finite($subtotal)) {
fwrite(STDERR, "Valor grande demais para calcular.\n");
exit(1);
}
$total = $subtotal * (1 - $discount / 100);
printf("Subtotal: R$ %.2f\nTotal com desconto: R$ %.2f\n", $subtotal, $total);
Na pasta do arquivo, execute:
php main.php
Uma interação no terminal será:
Preço unitário (ex.: 50.00):
50
Quantidade de produtos:
3
Desconto em porcentagem (0 a 100):
10
Subtotal: R$ 150.00
Total com desconto: R$ 135.00
As linhas com os valores das respostas são digitadas por você. Pressione Enter após cada resposta. As demais linhas são a saída do programa.
Este exemplo usa STDIN e roda no terminal; não o execute pelo servidor web do PHP.
Quando o exemplo é só um trecho
Comece o arquivo com <?php e cole as linhas embaixo. Funções podem ficar antes ou
depois do código que as usa.
Erros comuns
- O código aparece como texto em vez de rodar: faltou o
<?phpno início. Undefined variable $x: a variável foi usada antes de receber valor (e todo nome de variável começa com$).- Aspas simples não trocam variáveis nem
\n:'Olá $nome'imprime literalmente; use aspas duplas.