2026年8月22日(土) 21:02 سپهر محمودی <[email protected]>: > > Hi everyone, > > As some of you may know, my previous RFC (`array_search_range`) faced > significant opposition and feedback. I have listened to the community and > officially withdrawn it. Thank you to everyone who took the time to review it. > > Today, I would like to introduce a new, much simpler, and highly focused RFC: > `array_match()` > > Currently, if we want to filter an array to find elements containing a > specific substring, we have to rely on `array_filter()` combined with a > closure and `strpos()`/`stripos()`. This pattern is not only verbose but also > carries the performance overhead of executing a PHP closure for every single > array element. > > I am proposing a native function to handle this efficiently in C: > `array_match(array $array, string $needle, bool $ignore_case = false): array` > > This function preserves the original keys, safely casts values to strings, > and provides a clean, intent-revealing syntax. By implementing this > internally, we can significantly improve both readability and execution speed > compared to userland polyfills. > > You can find all the use cases and examples detailed on the RFC page: > https://wiki.php.net/rfc/array_match > > I look forward to hearing your thoughts and feedback on this proposal! > > Best regards, > Sepehr Mahmoudi >
Hi, Sepehr. I have some questions. - Why need this function? Is not enough in array_filter or array_find? - In GitHub, There are many use cases in same name functions. from: https://github.com/search?q=array_match+language%3APHP&type=code - In past RFC in str_icontains https://wiki.php.net/rfc/str_icontains was declind. So I don't think make sense that "case-insensitive" only ASCII now. For your reference: In big OSS like php-src, We investigate use case first. Regards Yuya -- --------------------------- Yuya Hamada (tekimen) - https://tekitoh-memdhoi.info - https://github.com/youkidearitai -----------------------------
