Php 只有第一次迭代可以在这个循环上工作为什么?

Php 只有第一次迭代可以在这个循环上工作为什么?,php,codeigniter,Php,Codeigniter,只有循环中的第一个迭代被插入到我创建的数组中 for ($i=1; $i < 2; $i++) { $this->data['checks'] = array( 'ques'.$i => $this->input->post('questionNumber'.$i), ); } for($i=1;$idata['checks']=数组( 'ques'.$i=>$this->input->post('questionNum

只有循环中的第一个迭代被插入到我创建的数组中

for ($i=1; $i < 2; $i++) { 
  $this->data['checks'] = array(
     'ques'.$i => $this->input->post('questionNumber'.$i),
  );            
}
for($i=1;$i<2;$i++){
$this->data['checks']=数组(
'ques'.$i=>$this->input->post('questionNumber'.$i),
);            
}
用于($i=0;$i<2;$i++){
$this->data['checks']=数组(
'ques'.$i=>$this->input->post('questionNumber'.$i),
);            
}

您已经将其设置为1,因此只需再次循环。将其设置为0将解决一个循环的问题。

$i<2
在第二次迭代时应为
$i
为2
2<2
-错误。您还需要每次追加一个新元素,否则它会覆盖:
$this->data['checks'][]=
我们真的需要回答这个问题吗?这些评论已经解决了这个问题,这个问题对未来的访问者没有任何价值。然后,在某个地方有一个问题:从我发帖的时候开始,看看那些评论。差1分钟。所以从逻辑上来说,你可以假设,当他们发表这些评论时,我可能正在写我的回复。此外,我认为,我给出的解释将对其他noob有所帮助。您还需要每次追加一个新元素,否则它将覆盖:
$this->data['checks'][=
for ($i=0; $i < 2; $i++) { 
  $this->data['checks'] = array(
     'ques'.$i => $this->input->post('questionNumber'.$i),
  );            
}