🐘
#PHP 8.6 is scheduled for general availability on November 19, 2026. It is in beta now, with feature freeze on September 22 and RC1 on September 24
#php86 #webdev #opensource
🧩 Partial Function Application: call a function with some arguments filled in and get back a closure for the rest. ? marks a single argument, ... stands for all remaining ones, e.g. str_replace(' ', '-', ?). The closure keeps parameter names, types and defaults. The v2 RFC passed 33 to 0
📏 New clamp() function returns a value within min/max bounds and replaces the error-prone min(max()) pattern. Works with any comparable type including strings and
#DateTime, throws ValueError if min > max
⏱️ Time\Duration: a final readonly class for lengths of time with nanosecond precision. Factory methods per unit, arithmetic, comparison operators and ISO 8601 parsing, intended as a shared type for core functions
🔒 Readonly properties can now have default values, simplifying get-only interface properties from PHP 8.4. Doc comments can sit directly on function parameters and are exposed via ReflectionParameter::getDocComment()
⚡ New Io\Poll API unifies epoll, kqueue, event ports and WSAPoll, replacing stream_select() for event loops and
#async runtimes
🧰 More additions: a built-in SortDirection enum, __debugInfo() on enums, a unified stream error model with StreamException and 50+ error codes, and UriBuilder classes for the URI extension
🛡️ Secure session defaults for new installs: session.use_strict_mode=1, cookie_httponly=1, cookie_samesite=Lax.
#Laravel manages its own session cookies, so most apps are unaffected
🌐