我有一个数组的数组,如下所示:
Array
(
[0] => Array
(
[id] => 1
[uid] => 746
[lid] => 748
)
[1] => Array
(
[id] => 6
[uid] => 746
[lid] => 744
)
[2] => Array
(
[id] => 11
[uid] => 749
[lid] => 743
)
)
我想要的是得到uid为746的修改后的数组。所以我期望的结果是:
Array
(
[0] => Array
(
[id] => 1
[uid] => 746
[lid] => 748
)
[1] => Array
(
[id] => 6
[uid] => 746
[lid] => 744
)
)
是否有任何快速的方法来做到这一点,而不是循环遍历每个元素并将匹配的数组保存到返回数组?
如果不检查每个元素,就无法做到这一点。也就是说,您可以使用array_filter
来完成此操作(尽管它将在幕后循环):
$arr = array_filter($arr, function($item){
return $item['uid'] == 746;
});
在PHP 5.3.0之前,你必须声明一个函数:
function filter746($item){
return $item['uid'] == 746;
}
$arr = array_filter($arr, 'filter746');