我有一个类似下面的数组
Array
(
[0] => 1
[1] => 1
[2] => 1
[3] => 2
[4] => 2
[5] => 3
[6] => 3
[7] => 3
[8] => 4
[9] => 4
[10] => 4
)
Run Code Online (Sandbox Code Playgroud)
有没有办法使用这些值获取此数组的子集?因此,如果需要值1的子集,则必须显示
Array
(
[0] => 1
[1] => 1
[2] => 1
)
Run Code Online (Sandbox Code Playgroud)
如果是2的子集那么
Array
(
[3] => 2
[4] => 2
)
Run Code Online (Sandbox Code Playgroud)
等等..我也需要保留索引.
我搜索了很多地方.但是没有得到答案.我希望避免多次循环.
您可以使用array_filter将数组过滤到仅查找要查找的元素.设置$subset为您要搜索的任何值,它将返回匹配的元素,而不更改键.
$subset = 2;
$results = array_filter($array, function ($item) use ($subset) {
return $item === $subset;
});
print_r($results);
Run Code Online (Sandbox Code Playgroud)
数组([3] => 2 [4] => 2)
| 归档时间: |
|
| 查看次数: |
70 次 |
| 最近记录: |