Die PHP-Internals-Übersicht vom 1. Oktober 2026 deckt 14 Diskussionen ab. Der bcrypt-Vorschlag spaltet die Gemeinschaft über das Kompatibilitätsrisiko. Sjoerd Langkemper will Eingaben über 72 Bytes in PHP 8.7 zunächst als veraltet kennzeichnen und ab 8.8 mit ValueError ablehnen. Bei FreshRSS stand ein 64 Zeichen langer Nonce vor dem Passwort und belegte das gesamte bcrypt-Fenster (CVE-2025-68402). Kamil Tekiela und Tim Düsterhus sehen die Längenkontrolle bei der Anwendung. Tim merkte an, dass die Grenze in Bytes gemessen wird, daher erreichen nicht-ASCII-Passwörter sie früher. Rowan Tommins verteidigte password_*-APIs dafür, sichere Handhabung ohne Algorithmus-Expertise möglich zu machen. Robert Chapin zeigte, dass ein gekürztes Passwort gegen den Hash des Originalpassworts erfolgreich validiert wird. Tim hält die Lösung für schlimmer als das Problem. Derick Rethans lehnte sie ab. Langkemper fragte, ob ein Wechsel des Standard-Hash erste Hilfe bringt.

Gina P. Banyards CompiledRegex-Prototyp erhielt 18 Antworten. Larry Garfield, Casper Langemeijer, Jordi Kroon und Juris Evertovskis wünschen sich den Namen Regex statt CompiledRegex. Der Entwurf hat acht boolesche Schalter. Juris wies auf benannte Argumente hin; Gina bevorzugt ein Enum-Set (PHP hat keins), Jordi Boggiano möchte eine Factory mit bekannten Modifier-Buchstaben. Osama Aldemeery erinnerte daran, dass fehlerfreie Kompilierung nicht-Fehler beim Matching nicht verhindert. Tim Düsterhus schlug vor, die Klasse könne throw-on-error global schalten. Aldemeery könnte seinen Regex-Exceptions-RFC zurückstellen bis Banyards Vorschlag zur Abstimmung kommt.

Pratik Bhujels Io\Terminal zielt auf 8.7. Es liest nativ Terminalgrößen, führt Raw-Modus mit Selbstrücksetzung aus, verarbeitet einzelne Tasten und versteckte Eingaben. Symfony Console genehmigte bereits einen Pull Request, der die Erweiterung bei Verfügbarkeit nutzt. Bhujel übernahm die Idee, Raw-Modus so lange aktiv zu halten wie ein Terminal-Token existiert und beim Freigeben des letzten zu resetten. Version 0.3 macht Terminal zur Schnittstelle und SystemTerminal zur konkreten Klasse. Larry Garfield missfiel false-on-Error und er forderte Mock-Unterstützung. Das RFC erhält die vollen 14 Tage vor einer Intent-to-Vote-Ankündigung.

Time\Instant bekam toInstant()-Methoden für DateTime und DateTimeImmutable. ISO-Ausgabe behält nun nachgestellte Nullen für Präzision. Tim Düsterhus und Derick Rethans verfassen keinen Testing-Clocks-RFC, weil sie das Feature nicht im Core sehen; Internals ist eingeladen einen zu schreiben. Mirco Babin brachte acht Einwände vor, darunter einen Namenkonflikt: Time\Clock und PSR-20 definieren beide now(). Tim will now() behalten und mit Derick über mögliches SystemClock::get() sprechen. Er fragte auch, ob Minuten-Präzision für Busfahrpläne Instants sind.

Weilin Dus Array-Kurzform-RFC macht aus =$x den Ausdruck 'x' => $x in Arrays, Destructuring und foreach. Syntax begann mit Doppelpunkt, wechselte in einer Stunde zum Gleichheitszeichen, weil Doppelpunkte mit dem Ternären kollidieren. Sebastian Bergmann verlangte Belege aus echtem Code und warnte, dass ein fehlendes Komma ein gültiges Programm zu einem anderen stumm umwandelt. David Carlier und Anton Smirnov zeigten auf compact und extract. Christian Schneider nutzt einen lokalen Patch seit Jahren. Du nannte Composer, Laravel, PHPUnit und Symfony, denkt aber über Rückzug nach.

Jakub Zelenkas IO Hooks macht blockierenden Code ohne Umschreiben nebenläufig. PHP hat seit 8.1 Fibers, aber blockierende Aufrufe gefrierten den Prozess weiterhin, darum bauen AMPHP, ReactPHP und Revolt ihre I/O-Stacks selbst. IO Hooks übergeben blockierende Stream-, Socket-, Curl-Operationen und sleep-Aufrufe an einen Event-Loop-Provider, der den Fiber suspendiert bis erledigt. Ohne Provider verhält sich PHP wie heute; mit Provider läuft sleep(1) in einem Fiber während andere weitergehen. Das RFC hängt von Polling API Additions ab, das Lücken in 8.6s Poll API schließt—Sockets, Timer, Signale. Beide sind früh mit keine Antworten.

Die Internals-Liste sperrte Sepehr Mahmoudi. Derick Rethans warnte ihn am 15. Sept. wegen KI-Posts und Thread-Volumen. Moderator Ilija Tovilo setzte am 21. Sept. ein neuer Thread/Monat und drei E-Mails/Woche fest, nannte es final. Als Mahmoudi ein intl_date_format-RFC postete, sperrte Rethans die Adresse von php.net, entzog Wiki-Zugang und kündigte am 28. Sept.

PHP 8.6.0RC2 kam raus, RC1 fiel wegen Paketfehler; RC2 ist jetzt der erste Candidate, RC3 fällig 8. Okt. Sicherheits-Updates für 8.5, 8.4, 8.3, 8.2: PHP 8.5.11, 8.4.26, 8.3.35, 8.2.34.

Andere RFCs verschoben sich. Langkempers Number-Base-RFC wirft nun plain Exception statt ValueError für ungültige Eingaben—schlechte Daten sind kein Programm-Bug. intval bleibt. Juliette Reinders Folmer will b-Präfix (PHP-6-Rest) deprecated; Tim schlug 8.7-Deprecations vor. Pedro Veloso warnte ein Engine-durchgesetztes #[Pure], aber Larry Garfield sagt es braucht Memoization oder ähnlich—statische Analyse kann das nicht. Karoly Negyesi postete Pre-RFC und Umsetzung für implements … by, delegiert Interface-Methoden Kotlin-Stil zu einer Eigenschaft. Alexander Danilov fand Post-Quantum-OpenSSL läuft viel in PHP; bot kleine PRs für Lücken. PEAR-Endorsement-RFC steckt in Diskussion; 28.-Sept.-Abstimmung öffnete nie. Woche sieben ohne RFC im Voting.