通过 PHP 检查这是何种类型的数组

19 浏览
0 Comments

通过 PHP 检查这是何种类型的数组

这个问题在这里已经有答案:

如何检查PHP数组是关联数组还是顺序数组?

我正在寻找一种简单的方法来查看此数组是否为关联数组:

array(\'apples\', \'bananas\');

key=>value。 现在PHP将给出如下内容:

array(2){
    [0]=>'apples'
    [1] => 'bananas'
}

如果您var_dump上述数组。 因此,从理论上讲,我有了我的关联数组。 但我要找的是看看array(\'key\' => \'some value\', \'some_other_key\' => \'some other value\');是否为“真正的”关联数组,还是只是普通的数组。

我在整个堆栈上看到了几篇文章,但他们的答案很复杂,写得很差,甚至根本不是面向对象的。

admin 更改状态以发布 2023年5月20日
0
0 Comments

您的意思是要区分纯数字键数组和字符串键数组吗?

$string_keys = preg_grep('/\D/', array_keys($your_array));
if (count($string_keys) > 0) {
   echo "at least one non-numeric key - it\'s associative";
} else {
   echo "no non-numeric keys. it's a normal array";
}

简而言之:获取数组中的所有键,使用 preg_grep 函数在结果键数组中搜索非数字项。如果匹配的键计数非零,则表示您有一个关联数组。

0