Lançado PHP 8.4: visão geral das principais novidades e melhorias

Treinador Online de Python para Iniciantes

Aprenda Python facilmente sem sobrecarga teórica. Resolva tarefas práticas com verificação automática e escreva código diretamente no navegador.

Start Course

Lançado novo PHP 8.4: o que mudou e por que atualizar



A comunidade de desenvolvedores recebeu o tão aguardado lançamento do PHP 8.4. Esta versão traz não apenas melhorias pontuais, mas também várias mudanças fundamentais de sintaxe que alteram a abordagem de escrita de código. Se você acompanha o ecossistema de desenvolvimento web, este lançamento é um passo importante. Vamos analisar as principais novidades.



Property Hooks: a tão esperada concisão



Uma das novidades mais comentadas são os property hooks (ganchos de propriedades). Antes, para adicionar lógica ao obter ou definir o valor de uma propriedade, era necessário escrever getters e setters (métodos). Agora, isso pode ser feito diretamente na declaração da propriedade, reduzindo código boilerplate.



  • Exemplo: Em vez dos métodos getFullName() e setFullName(), você escreve public string $fullName { get => ...; set => ...; }.
  • Benefício: O código se torna mais legível e mais próximo de linguagens modernas (Kotlin, C#).
  • Flexibilidade: É possível sobrescrever os hooks em classes filhas, simplificando o trabalho com herança.


Visibilidade Assimétrica (Asymmetric Visibility)



Outra inovação importante é a possibilidade de definir diferentes níveis de acesso para leitura e escrita de uma propriedade. Antes, isso exigia soluções alternativas ou métodos separados.



  • Sintaxe: public private(set) string $name; — a propriedade pode ser lida de qualquer lugar, mas alterada apenas dentro da classe.
  • Aplicação: Ideal para value objects e DTOs, onde é importante proteger os dados de alterações externas, mas mantê-los acessíveis para leitura.


Melhorias em tipos e desempenho



Os desenvolvedores do PHP continuam fortalecendo o sistema de tipos e otimizando o motor.



  • Novos tipos: Adicionado suporte a EXIT como tipo para funções que interrompem a execução (exit, die). Isso aumenta a precisão da análise estática.
  • JIT (Just-In-Time Compiler): Significativamente melhorado. No PHP 8.4, o JIT ficou mais inteligente: otimiza melhor loops "pesados" e operações matemáticas, proporcionando ganhos de desempenho em benchmarks de até 10-15%.
  • Garbage Collector: O mecanismo de coleta de lixo foi reformulado. O novo algoritmo lida com referências cíclicas de forma mais eficiente, reduzindo o consumo de memória em processos de longa duração (por exemplo, em workers de filas).


Outras mudanças notáveis



Além das grandes novidades, o lançamento traz muitas melhorias pequenas, mas úteis:



  • BC Math: Adicionadas novas funções para trabalhar com números de precisão arbitrária.
  • curl: Suporte a protocolos atualizado e tratamento de erros melhorado.
  • Deprecations: Algumas funções obsoletas (por exemplo, mysqli_ping) foram marcadas como depreciadas — prepare-se para sua remoção no PHP 9.0.


Vale a pena atualizar?



Se você usa um stack moderno (Laravel, Symfony) — a atualização para o PHP 8.4 é recomendada. Property hooks e visibilidade assimétrica simplificarão significativamente a escrita de código limpo. Para projetos antigos, verifique a compatibilidade de suas dependências, mas, no geral, a migração do PHP 8.3 será sem problemas.

Recommended Libraries