如何在PHP检查数组是否是多维的?
给定一个数组(单维或多维),任务是检查给定的数组是否是多维的。检查数组是否是多维的方法很少。如果数组包含一个为空的子数组,而另一个使用 rsort()函数,则函数count()和count_recursive()将给出错误的结果。此函数所有子数组向父数组的开头排序,并重新索引数组。这确保如果父数组中有一个或多个子数组,则父数组的第一个元素(在索引 0 处)将始终是一个数组。检查索引 0 处的元素,我们可以判断数组是否是多维的。
句法:
rsort( $array )
参数: rsort()函数接受一个参数。
- $array:这是你要传递给函数的对象。
示例 1:使用rsort函数检查数组是否为多维的PHP程序。
输出:
bool(true)
示例 2:另一个用于检查数组是否是多维的PHP程序使用count函数。
'a', 2 => 'b', 3 => array("Learn", "Contribute", "Explore"));
$gfg = array(1 => 'a', 2 => 'b');
// Function to check array is
// multi-dimensional or not
function is_multi($geeks) {
$rv = array_filter($geeks, 'is_array');
if(count($rv)>0) return true;
return false;
}
// Display result
var_dump(is_multi($geeks));
var_dump(is_multi($gfg));
?>
输出:
bool(true)
bool(false)
注意:尽量避免使用 count 和 count_recursive 来检查数组是否是多维的,因为您可能不知道是否包含空子数组的数组。