我有一个包含这些条目的数组:
$row['10']['something'] = "21";
$row['5']['something'] = "42";
我想创建一个从索引 0 到 10 的字符串。但只设置了索引“5”和“10”。但是我想要这样的字符串:
0, 0, 0, 0, 42, 0, 0, 0, 0, 21
目前我正在使用这个:
for($i=0; $i <= 10; $i++) {
if (!array_key_exists($i, $row))
$row[$i]['something'] = 0;
if ($i == 10)
$string .= $row['10']['something'];
else
$string .= $row[$i]['something'].', ';
}
但我需要它更有效率。我可以做 array_map 和 implode 但我不知道如何添加0, 0, 0,...
我只会得到21, 42
澄清:
我无法覆盖$row
此示例中调用的数组是从 sql 查询中填充的单个索引。它将完全覆盖现有数组。