我有一个多维数组
$array = ['a'=>'one','b'=>['two','three'],'c'=>['four','five','six']];
我希望根据值(数组)的长度(计数)得到一个键数组,就像这样
$array_keys = ['a','b','b','c','c','c'];
答案 0 :(得分:3)
array_merge()来粘合数组,而array_fill()应该可以解决问题:
$result = [];
foreach($array as $k=>$arr)
$result = array_merge($result, array_fill(0,count($arr),$k));
答案 1 :(得分:1)
我会使用foreach的混合,并且用于:
foreach ($array as $k => $v)
{
for ($i = 1; $i <= count($v); $i++)
{
$keys[] = $k
}
}
这将循环,计算数组和foreach项的长度,将其添加到keys数组。