我使用 JQueryUI 创建了一个自动完成字段,并将我的数据存储在一个平面文档中。我可以将这些值读入一个数组......但我希望能够根据用户输入返回字母匹配。因此,如果数组包含 [orange,blue,green,red,pink,brown,black]
并且用户键入 bl,那么我只返回 [blue,black]
。
查看 array_diff()
但没有完全匹配数组的整个值,我不知道如何使用它......也许是一个正则表达式抛出?我最弱的两个技能数组操作和正则表达式感谢您的帮助!
最佳答案
您不需要使用 array_filter
和自定义/lambda 函数 preg_grep
诀窍:
$input = preg_quote('bl', '~'); // don't forget to quote input string!
$data = array('orange', 'blue', 'green', 'red', 'pink', 'brown', 'black');
$result = preg_grep('~' . $input . '~', $data);
关于php - 使用 PHP 从类似于 SQL LIKE '%search%' 的数组中过滤值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5808923/