我有这个数组:
Array
(
[0] => Array // count 2 values
(
[0] => 3
[1] => 1
)
[1] => Array // count 2 values
(
[0] => 2
[1] => 2
)
[2] => Array // count 4 values
(
[0] => 1
[1] => 1
[2] => 1
[3] => 1
)
)
我希望获得最短列的所有值。在这种情况下:
Array
(
[0] => Array
(
[0] => 3
[1] => 1
)
[1] => Array
(
[0] => 2
[1] => 2
)
)
我在此之前发布了此案例:How To Get ALL Minimum Value Within Multidimensional Array?
但遗憾的是,该案例使用的是关联数组。而在这种情况下,不是关联数组。
如何从这个数组中获取值?
答案 0 :(得分:4)
首先获得所有子阵列的最小长度:
$min_length = min(array_map('count', $array));
然后过滤数组以获取具有该长度的元素:
$new_array = array_filter($array, function ($el) use ($min_length) {
return count($el) == $min_length);
});