如何指定数组值以保留并丢弃其他所有内容?

$want_to_keep = 32

Array
(
    [1015] => 78
    [2316] => 78
    [5374] => 32
    [8913] => 78
    [1397] => 32
)

我只想要具有 '32' 值的项目,所以输出:
Array
(
    [5374] => 32
    [1397] => 32
)

我查看了 array_filterarray_intersect ,这两个都不适合这种需要。

最佳答案

用过滤后的数组替换数组:

$arr = array_filter($arr, function($value) use ($want_to_keep) {
    return $value === $want_to_keep;
});

陌生的方式:
$arr = array_fill_keys(array_keys($arr, $want_to_keep, true), $want_to_keep);

关于PHP:在数组中保留所需的值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24075181/

10-12 12:31
查看更多