首页 >后端开发 >PHP问题 >php判断数组是否为数值数组

php判断数组是否为数值数组

(*-*)浩
(*-*)浩原创
2019-09-21 10:25:044579浏览

php判断数组是否为数值数组

PHP判断数组是数值数组

具体思路:获取数组的所有键:“array_keys()”

遍历所有键判断是否按照顺序从0开始每个增一。

具体方法如下:(推荐学习:PHP编程从入门到精通

function _checkAssocArray($arr)
    {
        $index = 0;
        foreach (array_keys($arr) as $key) {
            if ($index++ != $key) return false;
        }
        return true;
    }

逻辑很简单,关联数组的键不会全部都按照:0,1,2,3…的顺序递增,如果它确实这样,那么和数值数组没有任何区别,相同处理即可。

function is_assoc($arr) {
return array_keys($arr) !== range(0, count($arr) - 1);
}

测试

$arr = array(1, 2, 3, 4, 5, 6, 7);
print is_assoc($arr); // 输出false
$arr = array("foo" => "bar", "bar" => "foo");
print is_assoc($arr); // 输出true
$arr = array("foo" => "bar", 3, 4, 5);
print is_assoc($arr); // 输出true

以上是php判断数组是否为数值数组的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关文章

查看更多