Modernizing Laravel Development: PHP Attributes and Terminal Productivity
Mastering Localized Number Formatting
Precision in internationalization makes or breaks a user's experience. While has long offered the Number::currency helper, recent updates provide granular control over default states. You can now programmatically retrieve the default locale and currency via Number::defaultLocale() and Number::defaultCurrency(). This is particularly vital when building applications that span across borders. For instance, shifting a locale from English to German doesn't just change the currency symbol; it flips the decimal and thousands separators. A comma becomes a dot, and the currency symbol moves to the end of the string. These new methods ensure your application logic always knows exactly what format the end-user expects.
Streamlining Custom Collections with Attributes
Developers often need specialized logic for groups of models, like calculating the average rating for a specific set. Previously, you had to override the newCollection method in your model to return a custom collection class. The introduction of the CollectedBy PHP attribute simplifies this entirely. By adding #[CollectedBy(PodcastCollection::class)] above your model definition, you tell to wrap your query results in that specific class. This keeps your model cleaner by removing boilerplate methods and centralizing your collection logic where it belongs.
Contextual Route Parameters in Form Requests
Accessing route data inside a used to be clunky, often requiring calls to $this->route('parameter'). The new RouteParameter attribute provides a cleaner, more expressive way to inject this data. By using the #[RouteParameter('podcast')] attribute on a property within your request class, automatically binds the model instance from the URL. This allows for seamless authorization checks, such as verifying if the authenticated user actually owns the specific resource they are attempting to update, all without manually digging into the request object.
The Ultimate Dev Command
Managing multiple terminal windows for a local environment is a chore. To solve this, introduced a powerful new script: composer run dev. This single command orchestrates your entire stack. It launches the server, starts for frontend assets, initiates for real-time logging, and kicks off a queue worker. The terminal output is color-coded by service, making it easy to see logs from the queue right next to server requests. It transforms the developer experience by consolidating your workflow into one unified, manageable process.
Whether you are refining your internationalization or cleaning up your models, these features emphasize the framework's commitment to developer happiness and code readability.
- 33%路 companies
- 17%路 products
- 8%路 products
- 8%路 products
- 8%路 products
- Other topics
- 25%

Discover New PHP Attributes, Number Defaults, and Taylor's New Composer Script 馃
WatchLaravel // 13:16
The official YouTube channel of Laravel, the clean stack for Artisans and agents. We will update you on what's new in the world of Laravel, from the framework to our products Cloud, Forge, and Nightwatch.