Re: [PHP-DEV] [RFC] [Discussion] array_match

[email protected] (youkidearitai)
Newsgroups php.internals
Message-ID <CAEPPVa0+oSab_GrFjtWqgA7kV7JRSQiJaH2=Z_jcetThvLT-RQ@mail.gmail.com>
‪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
-----------------------------
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.