Brent Roose has published his What's new in PHP 8.6 rundown, and it's the single best place to see everything landing in the next release. He writes one of these for every version, and this one covers ten accepted RFCs plus a deprecation list that runs past twenty items.

PHP 8.6 is scheduled for November 19, 2026, and the feature freeze hasn't happened yet, so Brent notes the list may still grow, but the accepted RFCs are already in.

What the Post Covers

Each feature gets a short explanation and a runnable code sample. The headline items:

  • Partial function application, creating a closure with some parameters prefilled using a ? placeholder
  • Readonly property defaults, now allowed because property hooks made them useful on interfaces
  • A new polling API in the Io\Poll namespace, a replacement for stream_select() that can use epoll or WSAPoll
  • clamp(), which keeps a value inside a range and works on numbers, strings, and DateTime objects
  • A Time\Duration class for representing and doing math on durations
  • ReflectionProperty::isReadable() and isWriteable(), scope-aware checks that pair with property hooks
  • Function parameter doc comments, readable through ReflectionParameter::getDocComment()
  • A built-in SortDirection enum with Ascending and Descending cases
  • Safer session defaults, with session.use_strict_mode and session.cookie_httponly defaulting to 1 and session.cookie_samesite defaulting to Lax
  • Debuggable enums, which can now implement __debugInfo()

The partial function application section is the one to read first. Here is Brent's example of why it pairs so well with the pipe operator:

$output = 'Hello World'
    |> str_replace(' ', '-', ?)
    |> strtolower(...);
// hello-world

The pipe operator needs a callable that takes exactly one parameter, and ? is what lets you pin down the other arguments to get there.

PHP 8.6 Deprecation List

The deprecations list is one to look at, and Brent lists each one with the code that triggers it and the replacement you should move to.

None of these break anything today, but if you are using any, you should start working on moving away from them.

Read More

Head over to What's new in PHP 8.6 for the full write-up with code samples for every item. While you're on 8.5, the latest patch release, PHP 8.5.9, is a security release worth updating to if you haven't yet.

Brent also has a reminder in the post: the State of PHP survey from the PHP Foundation and JetBrains is still open, and over 8,000 developers have filled it out so far. It takes 15 to 20 minutes if you want to be counted.