Menu
Coddy logo textTech

Arrow Functions

Parte da seção Lógica & Fluxo do Journey de PHP da Coddy. Lição 3 de 68.

As funções de seta, introduzidas no PHP 7.4, oferecem uma maneira mais concisa de escrever funções anônimas simples. Elas usam a palavra-chave fn em vez da sintaxe completa de function, tornando seu código mais curto e limpo.

Veja como criar uma função de seta:

<?php
$greeting = fn($name) => "Hello, " . $name . "!";
echo $greeting("Alice");  // Saída: Hello, Alice!
?>

Observe as principais diferenças: as funções de seta usam fn em vez de function, têm uma seta => apontando para a expressão e não precisam de chaves nem de uma instrução return para expressões simples.

A maior vantagem das funções de seta é que elas capturam automaticamente as variáveis do escopo pai — nenhuma palavra-chave use é necessária:

<?php
$message = "Welcome";
$greeting = fn($name) => $message . ", " . $name . "!";
echo $greeting("Bob");  // Saída: Welcome, Bob!
?>

As funções de seta são perfeitas para operações curtas e simples, nas quais a sintaxe tradicional de função anônima parece muito prolixa.

challenge icon

Desafio

Fácil

Crie uma função de seta que receba o nome de um produto como parâmetro e retorne um rótulo de produto formatado. A função de seta deve capturar um nome de categoria do escopo ao redor.

Você receberá duas entradas: o nome da categoria e o nome do produto. Leia ambas as entradas, crie uma função de seta que capture a categoria e formate o rótulo do produto como "[Category] Product", chame a função de seta com o nome do produto e imprima o resultado.

Formato da entrada: Duas linhas — a primeira linha contém o nome da categoria, a segunda linha contém o nome do produto

Saída esperada: O rótulo do produto formatado no formato "[Category] Product"

Experimente você mesmo

<?php
// Ler a entrada
$category = trim(fgets(STDIN));
$product = trim(fgets(STDIN));

// TODO: Escreva seu código abaixo
// Crie uma arrow function que capture a categoria e formate o rótulo do produto


// Chame a arrow function e imprima o resultado
echo $result;
?>
quiz iconTeste seus conhecimentos

Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.

Todas as lições de Lógica & Fluxo

Pratique por conta própria: Compilador de PHP online