PHP dizide kaç tane boyutları belirlemek için bir yolu var mı?
Güzel bir sorun, burada a solution I stole from the PHP Manual:
function countdim($array)
{
if (is_array(reset($array)))
{
$return = countdim(reset($array)) + 1;
}
else
{
$return = 1;
}
return $return;
}
Bu her biri bir boyut elemanlarının aynı tip yok diziler için çalışıyor. Bu tüm unsurları çapraz gerekebilir.
$a[0] = 1;
$a[1][0] = 1;
$a[2][1][0] = 1;
function array_max_depth($array, $depth = 0) {
$max_sub_depth = 0;
foreach (array_filter($array, 'is_array') as $subarray) {
$max_sub_depth = max(
$max_sub_depth,
array_max_depth($subarray, $depth + 1)
);
}
return $max_sub_depth + $depth;
}