将元素插入到循环中具有特定位置的数组中


Insert element into array with specific position in loop

我想在数组中创建年份列表,如下所示:

array
(
'2011' => '2011',
'2010' => '2010',
'2009' => '2009',
...
...
'1905' => '1905'
)

我试着用这样的循环方法创建这个数组:

$years = array();
for($i=2011;$i>1904;$i--){
  array_push($years,$i);
}

但是创建了这样一个数组:

array
(
'0' => '2011',
'1' => '2010',
'2' => '2009',
...
...
'106' => '1905'
)

我的问题是如何将元素插入到具有特定位置的数组中
我也找扔相关的问题,但找不到解决办法
提前谢谢。

您不需要循环:

$years = array_combine(range(2011,1905),range(2011,1905));

尽管我想知道为什么您的数组中需要键和值相同

$years = array();
for($i = 2011; $i > 1904; $i--){
   $years[$i] = $i;
}
$newarray = array();
 for ($i = 2011; $i>1904; $i--)
{
 $newarray[$i]=$i;
}