Eu tenho essa matriz:
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
)
)
e quero obter todo o valor da coluna mais curta. nesse caso :
Array
(
[0] => Array
(
[0] => 3
[1] => 1
)
[1] => Array
(
[0] => 2
[1] => 2
)
)
Eu posto sobre este caso antes aqui: Como obter todo o valor mínimo dentro do array multidimensional?
mas infelizmente esse caso estava usando array associativo. enquanto neste caso não é array associativo.
como obter o valor de array como este?
Respostas:
4 para resposta № 1Primeiro, obtenha o tamanho mínimo de todos os subarrays:
$min_length = min(array_map("count", $array));
Em seguida, filtre a matriz para obter os elementos com esse comprimento:
$new_array = array_filter($array, function ($el) use ($min_length) {
return count($el) == $min_length);
});