function ArrayDimension($array, $option = NULL) { $img = new ImageGallery(); if (!is_array($array)) { return 0; } elseif (!$array) { return 1; } else { switch (strtolower($option)) { case 'first': $keys = array_keys($array); return $img->ArrayDimension($array[$keys[0]], $option) + 1; case 'last': $keys = array_keys($array); return $img->ArrayDimension($array[$keys[count($keys) - 1]], $option) + 1; case 'min': foreach ($array as $key => $val) { $dems[$key] = $img->ArrayDimension($val, $option); } return min($dems) + 1; case 'max': default: foreach ($array as $key => $val) { $dems[$key] = $img->ArrayDimension($val, $option); } return max($dems) + 1; } } }