PHP Funções Básico
Funções
Em PHP, funções são blocos de código reutilizáveis que executam uma tarefa específica. Elas podem receber dados de entrada (parâmetros) e devolver um resultado (retorno). A sintaxe básica é function nome($param1, $param2) { ... return $valor; }.
Parâmetros podem ter valores padrão, tornando-os opcionais na chamada. Desde o PHP 8.0, é possível usar argumentos nomeados, passando valores pelo nome do parâmetro, o que melhora a legibilidade e permite pular opcionais.
Funções variádicas aceitam um número indefinido de argumentos usando ...$args. Dentro da função, $args é um array com todos os valores passados. Isso é útil para funções que precisam lidar com listas dinâmicas, como somas ou formatações.
Neste card, você verá como declarar funções com parâmetros e retorno, definir valores padrão, usar argumentos nomeados e criar funções variádicas. Esses recursos são essenciais para escrever código limpo e flexível em PHP.
Pontos-chave
- Funções são declaradas com
functione podem receber parâmetros e retornar valores comreturn. - Parâmetros podem ter valores padrão, tornando-os opcionais na chamada.
- Argumentos nomeados permitem passar valores pelo nome do parâmetro, na ordem que quiser.
- Funções variádicas usam
...$argspara aceitar um número variável de argumentos. - O tipo de retorno pode ser declarado após os parênteses, ex.:
function soma(int $a, int $b): int.
<?php
// Função simples com parâmetros e retorno
declare(strict_types=1);
function saudacao(string $nome): string {
return "Olá, $nome!";
}
// Parâmetro com valor padrão
function potencia(int $base, int $expoente = 2): int {
return $base ** $expoente;
}
// Argumentos nomeados
function criarUsuario(string $nome, string $email, bool $admin = false): string {
$tipo = $admin ? 'admin' : 'comum';
return "$nome ($email) - $tipo";
}
// Função variádica
function soma(...$numeros): int {
return array_sum($numeros);
}
echo saudacao("Maria") . PHP_EOL;
echo potencia(5) . PHP_EOL; // usa expoente padrão 2
echo potencia(2, 3) . PHP_EOL;
echo criarUsuario(email: "joao@ex.com", nome: "João") . PHP_EOL;
echo soma(1, 2, 3, 4, 5) . PHP_EOL;