Wendell Adriel published an in-depth blog post on PHP attributes, shared via freek.dev's community section. The article explains attributes as a form of metadata attached to classes, methods and properties, and shows how to retrieve and act on them using PHP's Reflection API.

Beyond the basics, the piece covers practical design patterns built around attributes, along with concrete examples drawn from Laravel applications. It also discusses the performance cost of relying heavily on attributes and Reflection, and how to approach testing code that uses them.

A notable part of the article argues against treating attributes as a universal solution: it points out situations where straightforward, explicit code is clearer and more maintainable than an attribute-driven abstraction. This makes the piece useful for developers weighing when attributes genuinely simplify their codebase versus when they just add indirection.