Php 当我有foreach时,如何在数组中保存值?

Php 当我有foreach时,如何在数组中保存值?,php,arrays,codeigniter,Php,Arrays,Codeigniter,当foreach做他的工作时,我需要把所有的ID放在一个数组中,因为现在我正在对变量$eduevalid进行纠偏 $edlevel_list = array(); foreach ($evaluation_list as $evaluation) { array_push($edlevel_list, $evaluation); $eduevalid = $this->Evaledu_model->getRecordByEvalId($

当foreach做他的工作时,我需要把所有的ID放在一个数组中,因为现在我正在对变量$eduevalid进行纠偏

$edlevel_list = array();

   foreach ($evaluation_list as $evaluation) 
      {
         array_push($edlevel_list, $evaluation);
    $eduevalid = $this->Evaledu_model->getRecordByEvalId($evaluation->id);
      }
我需要foreach pass首次保存在数组$edlevel_列表中时,您可以使用以下命令:

$eduevalid[] = $this->Evaledu_model->getRecordByEvalId($evaluation->id);
这样,结果的每个id都将存储到数组的新索引中

结合您的代码:

$eduevalid = array();

 foreach ($evaluation_list as $evaluation) 
 {
    $eduevalid[] = $this->Evaledu_model->getRecordByEvalId($evaluation->id);
 }

可以使用元素id=>evalutation形成关联结果数组:


我真的不明白您想要做什么,只需选择一种解决方案:

foreach ($evaluation_list as $evaluation) 
{
    //get the id
    $eduevalid = $this->Evaledu_model->getRecordByEvalId($evaluation->id);
    //solution one : just store the id in the array
    array_push($edlevel_list, $eduevalid );
    //solution two : use the id as key of your array and store the evaluation object
    $edlevel_list[$eduevalid] = $evaluation;
}

以下各项应能完成这项工作:

$edlevel_list = array();
$eduevalid_list = array();

   foreach ($evaluation_list as $evaluation) 
   {
       $edlevel_list[] = $evaluation;
       $eduevalid_list[] = $this->Evaledu_model->getRecordByEvalId($evaluation->id);
   }

您将在
$eduevalid\u列表中重新写入以前所有的
$eduevalid
变量。

我不明白您的意思

但可能是:

   $edlevel_list = array();
   $eduevalid = array();
   foreach ($evaluation_list as $evaluation) 
      {
         $edlevel_list[] =  $evaluation;
         $record = $this->Evaledu_model->getRecordByEvalId($evaluation->id);
         $eduevalid[] = $evaluation->id;
      }

这是使用
foreach循环将值存储在数组中的最简单方法。希望这就是你想要的

$arrayRecords = array();

foreach($evaluation_list as $evaluation){

      $arrayRecords[] = $evaluation;        

}
如果有关联数组,则可以执行以下操作

$arrayRecords = array();

foreach($evaluation_list as $key=>$evaluation){

      $arrayRecords[$key] = $evaluation;        

}

现在还不清楚你想要实现什么。您试图将哪个值推送到数组中
$evaluation
$eduevalid
?我只想获取$evaluation的ID并保存在数组中,因为z正在纠正变量$eduevalid。您只需要使用另一个数组..(假设OP需要),现在当变量$eduevalid为true时,我如何对此复选框执行逻辑保持选中状态?回显表单_复选框('edu_级别[]','1',在_数组中('1',$eduevalid));取决于你想做什么。如果要在生成内容时选中复选框,可以使用PHP和HTML属性
checked
。但是,当您想在页面加载后执行此操作时,应该使用javascript在客户端执行此操作。你总是可以问一个新问题,尽管我建议先尝试一些东西,然后再问。Goodluck:)是的,我想在页面加载后执行。。。复选框在foreach中。您的html是用php创建的吗?如果是,每个
$evaluation
是否代表一个复选框?在我看到的5行代码后面我什么都不知道。这种方式有很多种方式。
$arrayRecords = array();

foreach($evaluation_list as $key=>$evaluation){

      $arrayRecords[$key] = $evaluation;        

}