Operador Pipe |> no PHP 8.5 — O Que É e Como Funciona

phplogo-1748857025-e29825ea1cb79d3c3069-1024x512 Operador Pipe |> no PHP 8.5 — O Que É e Como Funciona

O que é o Operador Pipe |>?

O operador pipe |>, introduzido no PHP 8.5, permite encadear funções de forma mais fluída e legível. Ele encaminha o valor à esquerda como argumento para a função à direita do símbolo.

🔍 Como Funciona na Prática

echo "Hello World" |> strlen(...); // Resultado: 11

Equivalente a:

echo strlen("Hello World");

Exemplo com múltiplas operações:


echo "Rodrigo Pereira"
    |> trim(...)
    |> strtolower(...)
    |> ucwords(...); // Resultado: "Rodrigo Pereira"
  

✅ Vantagens do Operador Pipe

  • 💡 Código mais legível
  • 📉 Menos variáveis temporárias
  • 🧠 Estilo funcional e moderno

⚠️ Limitações e Regras

  • 🚫 A função à direita deve aceitar apenas um argumento.
  • 🔁 O valor passado deve ser utilizado diretamente pela função.
  • ❌ Se o destino não for invocável, ocorre erro.

🧪 Exemplo Avançado


$result = "Hello World"
    |> htmlentities(...)
    |> str_split(...)
    |> fn($x) => array_map(strtoupper(...), $x)
    |> fn($x) => array_filter($x, fn($v) => $v != 'O');
  

📊 Uso com Arrays e Objetos


$numberOfAdmins = getUsers()
    |> fn($list) => array_filter($list, isAdmin(...))
    |> count(...);

var_dump($numberOfAdmins); // int(1);
  

🧭 Boas Práticas

  • ✔️ Utilizar com funções simples e unárias.
  • 🔎 Evitar encadeamentos demasiado complexos.
  • 📝 Documentar bem cada etapa da pipeline.

O operador |> é uma inovação bem-vinda no PHP 8.5. Ele aproxima o PHP de paradigmas mais modernos, melhora a clareza do código e reduz a necessidade de variáveis temporárias. Ideal para pipelines de transformação de dados! 🔄

Partilha este Post:

Atualmente a estudar Engenharia de Software na UNIGRAN e com formação técnica em Tecnologias e Programação de Sistemas de Informação pelo CINEL, sou apaixonado por desenvolvimento de software. No meu blog, partilho conhecimentos, dicas e insights sobre engenharia de software e soluções tecnológicas, com foco na criação de sistemas.

Publicar comentário