According to TheRegister.com, PHP 8.5 landed on Thursday with a long-awaited pipe operator and new standards-compliant URI tools. This marks one of the scripting language’s more substantial updates since version 8.4 debuted a year ago. The pipe operator allows function calls to be chained together, avoiding extraneous variables and nested statements. PHP-FIG core committee member Larry Garfield called it one of the highest “bangs for the buck” features in recent memory. The new URI extension finally provides proper parsing based on RFC 3986 and WHATWG URL standards, replacing the problematic parse_url() function that dates back to PHP 4. Given that PHP powers WordPress, which accounts for about 43 percent of all websites, this update affects a massive portion of the web.
Pipe operator finally arrives
Here’s the thing about the pipe operator – it’s one of those features that makes you wonder why it took so long. Basically, it lets you write cleaner code by chaining operations together without creating temporary variables or deeply nested function calls. If you’ve used Unix pipes or languages like Elixir and F#, you already know how game-changing this can be. But honestly, PHP has been playing catch-up here. JavaScript has been debating a pipe operator proposal for years, and now PHP beats them to it? That’s pretty wild for a language that started as Personal Home Page tools back in 1995.
URI parsing finally fixed
Now this is where things get really interesting. The fact that PHP didn’t have proper URI parsing until now is kind of shocking when you think about it. I mean, this is a language built for the web, and the existing parse_url() function came with warnings about not using it with untrusted URLs. That’s like selling a car with a “don’t drive in rain” sticker. The new URI extension follows actual standards, which is crucial for security and interoperability. It’s one of those “how did we live without this” moments that makes you question all the legacy code out there still using the old broken parser.
Other notable additions
Beyond the headline features, PHP 8.5 brings some solid quality-of-life improvements. Clone With lets you update object properties more efficiently, which is great for immutable programming patterns. The #[\NoDiscard] attribute warns when return values go unused – perfect for catching those “why isn’t this working?” moments. And persistent cURL handles that can be shared across requests? That’s a performance win for applications making lots of HTTP calls. These might not be flashy, but they’re the kind of practical improvements that actually make developers’ lives better day to day.
What it means for PHP’s future
So where does this leave PHP in 2025? Look, the language has come a long way from its “just hack something together” roots. With features like the pipe operator and modern tooling, it’s clearly trying to shed its reputation as a messy language. But here’s my question: can it ever fully escape that legacy? When you’re powering 43% of the web through WordPress, you’re stuck supporting decades of existing code. Still, updates like this show the PHP community is serious about moving forward. They’re not just adding features – they’re fixing fundamental flaws that should have been addressed years ago. That’s progress, even if it’s slower than some would like.
