What’s New in PHP 8.4: A Practical Overview

PHP 8.4 continued the language’s steady modernization, adding quality-of-life features that reduce boilerplate without breaking backward compatibility.

Property Hooks

class User {
    public string $email {
        set(string $value) {
            $this->email = strtolower(trim($value));
        }
    }
}

Why It Matters

Property hooks eliminate a huge amount of boilerplate getter/setter code that PHP developers have hand-written for decades, bringing PHP’s ergonomics closer to languages like C# and Kotlin.