PHP 8.4 trouxe Property Hooks, Asymmetric Visibility e melhorias no JIT. Veja o que realmente importa para aplicações em produção.
Property Hooks: a maior mudança desde o PHP 8.0
PHP 8.4 introduziu Property Hooks — uma forma de definir lógica de get e set diretamente na declaração da propriedade, sem precisar de métodos separados. A sintaxe é limpa e elimina a cerimônia dos getters/setters tradicionais.
class User {
public string $fullName {
get => trim("$this->firstName $this->lastName");
}
}Isso não é açúcar sintático trivial. É uma mudança que permite interfaces mais expressivas e elimina classes de VO (Value Objects) verbosas.

Asymmetric Visibility
Outra adição significativa é a visibilidade assimétrica de propriedades. Agora é possível ter uma propriedade pública para leitura e restrita para escrita:
class Order {
public private(set) int $total = 0;
}Melhorias no JIT
O compilador JIT teve refatoração interna no PHP 8.4. Para a maioria das aplicações web, o ganho de JIT ainda é marginal — mas workloads CPU-bound (processamento de imagens, parsers) se beneficiam consideravelmente.
Em produção, desabilitar JIT em aplicações web puras e habilitar apenas onde há CPU-bound real. O overhead de compilação pode superar o ganho em requisições curtas.
O que fazer agora?
Atualizar a imagem Docker para
php:8.4-fpm-alpineRevisar código que depende de comportamento de type coercion
Explorar Property Hooks em entidades e VOs
Rodar PHPStan com level 9 para encontrar incompatibilidades
Publicado em
PHP & BackendExplorar por tema