J'ai un tableau $MyArray
qui a quelques éléments qui sont aussi array (appelons les sous-réseaux). Je veux savoir combien d'éléments le sous-tableau avec le plus d'éléments a. Le problème est que je ne sais pas si l'index existe:Offset non défini avec count()
max(
@count($MyArray[$i*7]),
@count($MyArray[$i*7+1]),
@count($MyArray[$i*7+2]),
@count($MyArray[$i*7+3]),
@count($MyArray[$i*7+4]),
@count($MyArray[$i*7+5]),
@count($MyArray[$i*7+6])
);
Struckture de $MyArray
:
Array(
12 => array (
0 => array (0 => 0, 1 => 1,),
1 => array (0 => 13, 1 => 1,),
2 => array (0 => 15, 1 => 1,),
3 => array (0 => 20, 1 => 1,),
4 => array (0 => 69, 1 => 1,)
),
5 => array (
0 => array (0 => 55, 1 => 1,),
1 => array (0 => 32, 1 => 1,),
2 => array (0 => 12, 1 => 1,),
3 => array (0 => 21, 1 => 5,)
),
....
)
cela peut-il être fait mieux (plus vite)?
edit: Je connais foreach
et je ne veux pas boucler tous les éléments de ce tableau. Je veux juste un intervalle de celui-ci. @
est utilisé, parce que je ne sais pas si $MyArray[$i*7 + x]
est Null
ou array
.
$i
est un élément de [0, 1, 2, 3, 4] (parfois 5)
donc, au fond vous avez un tableau avec plusieurs sous-réseaux, et le but est d'obtenir le sous-tableau avec le plus grand nombre d'éléments et de compter les éléments totaux? – kjy112
@ kjy112, le but est de simplement compter les éléments de ce sous-réseau, sans même obtenir ce sous-réseau. – shamittomar
PHP error suppression, '@', quand overused est le diable –