Property hooks are one of the most convenient additions in PHP 8.4, but not every getter should become one. Where you actually gain, and where you would only be rewriting code for fashion.
Property hooks in PHP 8.4 let you attach logic to reading or writing a property without writing separate getter and setter methods. At first glance this is just less typing, but there are places where it genuinely produces better code, and places where it does not.
What does it replace?
The classic pattern: a private property with a getter that computes something. On the calling side that is a method call. A property hook exposes the same thing as a property, while the logic stays inside the class.
The practical benefit is not brevity but that the calling code no longer reveals whether the value is computed or stored. Which means you can turn a stored field into a computed one later without touching every call site.
Where it pays off
Derived values that always follow from other fields: full name, gross price, days remaining.
Validation on write, when a field cannot take arbitrary values and the class itself should guarantee that.
Value objects, where the whole point is to keep the data and its rules in one place.
Where it does not
If the getter does expensive work (a database query, an HTTP call, reading a file), a method is the better choice. Reading a property suggests it is cheap. If it is not, the next developer will read it in a loop and wonder why the page is slow.
The same goes for working Eloquent models. Laravel's accessor and cast system is well established and integrates closely with Eloquent's attribute handling and serialisation; property hooks do not replace it, they only blur the picture.
What we would do
In new code, use it freely wherever one of the three cases above applies. In an existing codebase, do not start a refactor just for this: replacing getters improves nothing on its own, while every change carries risk and makes code review harder.
A good rule: adopt a new language feature when it solves a concrete problem, not when it ships.