PHP将所有数组视为关联数组,因此没有任何内置函数。有人能推荐一种比较有效的方法来检查数组是否只包含数字键吗?基本上,我希望能够区分这一点:$sequentialArray = array('apple', 'orange', 'tomato', 'carrot');这是:$assocArray = array('fruit1' => 'apple',
'fruit2' => 'orange',
'veg1' => 'tomato',
'veg2' => 'carrot');
3 回答
![?](http://img1.sycdn.imooc.com/545861f00001be3402200220-100-100.jpg)
阿晨1998
TA贡献2037条经验 获得超6个赞
function has_string_keys(array $array) { return count(array_filter(array_keys($array), 'is_string')) > 0;}
$array
![?](http://img1.sycdn.imooc.com/533e4d2600013fe202000200-100-100.jpg)
FFIVE
TA贡献1797条经验 获得超6个赞
键可以是整数,也可以是字符串。如果键是整数的标准表示形式,它将被解释为整数(即“8”将被解释为8,而“08”将被解释为“08”)。键中的浮点数被截断为整数。索引数组类型和关联数组类型在PHP中是相同的类型,可以包含整数和字符串索引。
function keyedNext( &$arr, &$k){ $k = key($arr); return next($arr);}for ($k = key(reset($my_array)); is_int($k); keyedNext($my_array,$k)) $onlyIntKeys = is_null($k);
- 3 回答
- 0 关注
- 872 浏览
添加回答
举报
0/150
提交
取消