0

我正在从数据库创建一个数组,并且它被正确创建,如下所示。

array(2) { 
    ["members"]=> bool(true) 
    ["maps"]=> bool(true) 
} 

问题是当我使用 key:value 输出数组时,键正在输出元素编号,例如 0 代表“成员”,1 代表“地图”。

foreach($vPrivileges as $vKey => $vValue) {
   echo "$vKey: $vValue";
}

我需要输出元素的实际名称和值,我花了一段时间在网上查找并尝试了一些代码示例,但未能找到解决方案,非常感谢任何帮助。

我还注意到,如果我获取数组并在其上使用sort()函数,它会按预期排序,但有一个例外是将所有数组元素重命名为 0、1 等。

array(2) { 
    [0]=> bool(true) 
    [1]=> bool(true) 
} 
4

1 回答 1

2

使用asort而不是 sort 来保留数组键。这将解决您的问题(假设您在 foreach 循环之前调用 sort )。

于 2013-04-13T14:26:18.463 回答