Funções em PHP: domine-as e leve seus projetos ao próximo nível
php

Funções em PHP: domine-as e leve seus projetos ao próximo nível

Fala, dev! Se você está iniciando sua jornada com PHP, saber como criar e utilizar funções é um dos primeiros passos para organizar seu código e deixá-lo mais eficiente. Bora codar e mergulhar no universo das funções? Vamos nessa!

O que são funções em PHP?

Em termos simples, uma função é um bloco de código que pode ser chamado sempre que necessário. Isso evita que você repita o mesmo código várias vezes ao longo do programa, promovendo a reutilização e a modularidade. Além disso, funções deixam o código mais limpo, legível e fácil de manter.
Quer um exemplo básico? Vamos criar uma função que imprime uma saudação:
<?php function saudacao() { echo "Olá, dev!"; } ?>
Aqui, criamos uma função chamada saudacao(). Sempre que a chamarmos, ela imprimirá "Olá, dev!" na tela. Simples, né? Para chamar essa função, basta fazer isso:
<?php saudacao(); ?>

Por que usar funções?

Funções ajudam na organização do código e permitem:
  • Reutilização: escreva uma vez, use quantas vezes quiser!
  • Organização: mantém o código modular e dividido em partes lógicas.
  • Facilidade de manutenção: se precisar fazer uma alteração, basta mudar na função em vez de em vários pontos no código.
  • Escalabilidade: funções são essenciais para aplicações maiores e mais complexas.

Funções com parâmetros

Agora, vamos adicionar um tempero extra e criar funções que aceitam parâmetros. Esses parâmetros são como variáveis que você passa para a função no momento da execução.
<?php function exibirNome($nome) { echo "Olá, $nome!"; } ?>
Aqui, temos a função exibirNome(), que recebe um parâmetro $nome. Quando a função é chamada, podemos passar diferentes valores para o parâmetro:
<?php exibirNome("Rafael Lunardelli"); exibirNome("Diego Fernandes"); ?>
O resultado será:
Olá, Rafael Lunardelli! Olá, Diego Fernandes!
Bem prático, né? Isso permite que você personalize a função de acordo com o valor que for passado!

Funções com retorno de valores

Além de executar código, funções também podem retornar valores que podem ser usados posteriormente no programa. Vamos ver como isso funciona:
<?php function calcularArea($raio) { return 3.14 * $raio * $raio; } ?>
Essa função calcularArea() recebe o valor do raio e retorna a área de um círculo. Para utilizar esse valor, basta chamar a função e armazenar o resultado em uma variável:
<?php $area = calcularArea(5); echo "A área do círculo é: $area"; ?>
Compreender a diferença entre return e echo é fundamental para escrever funções eficientes e saber quando é apropriado usar cada um deles. Entendendo o return versus echo:
  • Quando utilizamos return dentro de uma função, estamos dizendo ao PHP para devolver um valor para o ponto onde a função foi chamada. Isso permite que esse valor seja armazenado em uma variável, passado para outra função ou manipulado conforme necessário.
  • Já o echo é usado para imprimir algo diretamente na tela. Se você usar echo dentro de uma função, o resultado será exibido imediatamente, mas não poderá ser reutilizado ou armazenado.
Quando usar cada um?
  • Use return quando precisar que a função processe dados e forneça um resultado que será usado posteriormente no seu código.
  • Use echo dentro de funções quando o objetivo for apenas exibir uma informação na tela, sem necessidade de reutilizar aquele valor.
Exemplo com echo dentro da função:
<?php function exibirArea($raio) { echo "A área do círculo é: " . (3.14 * $raio * $raio); } exibirArea(5); ?>
Neste caso, a função exibirArea() irá imprimir o resultado diretamente na tela e não retornará nenhum valor que possa ser utilizado posteriormente.

Passagem de parâmetros por referência

Normalmente, os parâmetros são passados por valor, ou seja, uma cópia da variável é utilizada dentro da função. Mas, e se você quiser modificar diretamente o valor de uma variável fora da função? É aí que entra a passagem por referência. Veja só:
<?php function adicionarCinco(&$valor) { $valor += 5; } $numero = 10; adicionarCinco($numero); echo $numero; // O valor será 15 ?>
Nesse caso, o símbolo & indica que estamos passando o parâmetro por referência, permitindo que a função altere diretamente o valor da variável $numero.

Valores padrão para parâmetros

Às vezes, você quer que uma função tenha um comportamento padrão, mesmo se o parâmetro não for informado. Isso pode ser feito definindo valores padrão:
<?php function definirIdade($idade = 18) { echo "A idade é: $idade <br>"; } definirIdade(25); // A idade é: 25 definirIdade(); // A idade é: 18 ?>
Se nenhum valor for passado para a função definirIdade(), o valor padrão 18 será utilizado.

Funções anônimas e closures

No PHP, também podemos criar funções anônimas (ou closures), que são funções sem nome que podem ser atribuídas a variáveis ou passadas como parâmetros para outras funções:
<?php $saudacao = function($nome) { echo "Olá, $nome!"; }; $saudacao("Carlos"); ?>
Nesse exemplo, a função anônima é atribuída à variável $saudacao e chamada como se fosse uma função normal.

Boas práticas ao criar funções

  1. Nomes descritivos: dê nomes claros e que façam sentido para as funções, como calcularSoma(), exibirMensagem(), etc.
  1. Responsabilidade única: cada função deve fazer uma única coisa, o que facilita o entendimento e a manutenção.
  1. Documentação: sempre comente suas funções, explicando o que elas fazem e quais são seus parâmetros.

Funções nativas úteis no PHP

Além de criar suas próprias funções, o PHP possui uma vasta coleção de funções nativas que podem facilitar muito o desenvolvimento. Aqui estão algumas das mais utilizadas:

Funções de manipulação de strings

  • strlen($string): Retorna o comprimento de uma string.
    • <?php $texto = "Rocketseat"; echo strlen($texto); // Saída: 10 ?>
  • strtoupper($string): Converte uma string para letras maiúsculas.
    • <?php $texto = "hello world"; echo strtoupper($texto); // Saída: HELLO WORLD ?>
  • strtolower($string): Converte uma string para letras minúsculas.
    • <?php $texto = "HELLO WORLD"; echo strtolower($texto); // Saída: hello world ?>

Funções de manipulação de arrays

  • array_merge($array1, $array2): Mescla um ou mais arrays.
    • <?php $array1 = ["HTML", "CSS"]; $array2 = ["JavaScript", "PHP"]; $resultado = array_merge($array1, $array2); print_r($resultado); // Saída: Array ( [0] => HTML [1] => CSS [2] => JavaScript [3] => PHP ) ?>
  • in_array($valor, $array): Verifica se um valor existe em um array.
    • <?php $linguagens = ["PHP", "JavaScript", "Python"]; if (in_array("PHP", $linguagens)) { echo "PHP está na lista!"; } // Saída: PHP está na lista! ?>

Funções matemáticas

  • round($numero, $precisao): Arredonda um número para a precisão especificada.
    • <?php $numero = 3.14159; echo round($numero, 2); // Saída: 3.14 ?>
  • rand($min, $max): Gera um número aleatório entre os valores especificados.
    • <?php echo rand(1, 10); // Saída: um número aleatório entre 1 e 10 ?>

Funções de manipulação de datas

  • date($formato): Formata uma data/hora local.
    • <?php echo date("d/m/Y"); // Saída: data atual no formato dia/mês/ano ?>
  • strtotime($data): Converte uma string de data/hora em um timestamp Unix.
    • <?php $data = "2023-10-18"; $timestamp = strtotime($data); echo date("d/m/Y", $timestamp); // Saída: 18/10/2023 ?>

Por que utilizar funções nativas?

As funções nativas do PHP são altamente otimizadas e testadas, garantindo desempenho e confiabilidade. Utilizá-las pode economizar tempo de desenvolvimento e reduzir a quantidade de código necessário para realizar tarefas comuns.
Sempre que precisar realizar uma tarefa específica, verifique se já existe uma função nativa que atenda à sua necessidade antes de criar uma função personalizada.

Quer aprender mais sobre PHP?

Se você está curtindo o aprendizado sobre funções em PHP, não pare por aqui! A Rocketseat tem uma série de artigos que vão complementar sua jornada e aprofundar ainda mais seus conhecimentos. Dá uma olhada:
Esses artigos são perfeitos para te ajudar a dominar os fundamentos do PHP e te preparar para projetos cada vez mais desafiadores.

Conclusão

As funções são um dos pilares fundamentais da programação em PHP. Elas tornam o código mais limpo, reutilizável e organizado. Agora que você já entende como criar e usar funções, que tal aplicá-las em um projeto prático?
🚀
E para continuar evoluindo como dev PHP, a Rocketseat oferece uma formação completa em PHP, onde você vai aprender desde os fundamentos até a criação de aplicações robustas! Então, bora codar e levar suas habilidades para o próximo nível?

Aprenda programação do zero e DE GRAÇA

No Discover você vai descomplicar a programação, aprender a criar seu primeiro site com a mão na massa e iniciar sua transição de carreira.

COMECE A ESTUDAR AGORA