Sepehr Mahmoudi, new to the internals list, proposed array_search_range(), a variant of array_search() taking an offset and length so part of an array can be searched without an intermediate array_slice() copy. Weilin Du noted the soft feature freeze had already closed 8.6 to it. Rowan Tommins argued for a composable lazy array slice type instead, citing Swift as precedent, and broke the idea into three shippable steps: an optimized ArraySliceIterator, iter_search and iter_any functions working with any iterator, and possibly syntax later. Larry Garfield sided with Tommins. The RFC remains a draft targeting 8.6, and a GitHub review found the implementation still walks the entire array.

A second thread turned on case sensitivity. ini_get_all() is the only one of four extension-name functions that is case-sensitive. Weilin Du opened a pull request to align it with extension_loaded(), phpversion() and get_extension_funcs(). Daniel Scherzer argued all four should become case-sensitive with a normal deprecation path, and Du withdrew his PR, planning to add the change to the 8.7 deprecations RFC. Aleksander Machniak, Matteo Beccati and Juliette Reinders Folmer then argued for case insensitivity, citing composer.json conventions and the cost of lowercasing names from get_loaded_extensions(). The thread is unresolved.

Other threads: Henrik Skov proposed a params keyword for named argument blocks, and the discussion converged on the concept of a lazy value evaluated at call time. A pre-RFC by Otar Chekurishvili would add opt-in JSON_ALLOW_COMMENTS and JSON_ALLOW_TRAILING_COMMAS flags to json_decode() and json_validate() for 8.7; Anton Smirnov noted this matches JSONC or JWCC, not full JSON5. Alexander Lisachenko proposed an opt-in class map for FFI so registered C types return user classes instead of the final FFI\CData. Eloi Montañés asked about abstract class constants, and John Bafford extended the idea to interfaces. Robert Humphries argued the READ_CSV flag of SplFileObject needs deprecating alongside the CSV methods.

Quick items: bindec(), octdec(), hexdec() and base_convert() would throw ValueError on invalid characters under a proposal targeting 8.7. Weilin Du wants upload_max_filesize parsing to warn and fall back on bad input. Osama Aldemeery parked his PREG_THROW_ON_ERROR RFC until early September. No RFC is currently in voting. PHP 8.6.0 beta 1 shipped Thursday from Joe Ferguson, with beta 2 due August 27; 8.4.25 and 8.5.10 RC 1 also went out, and the 8.6 branch is expected to be cut on September 22.