我的阵列问题无法解决它:
这里是已经在foreach循环中的代码。我从这个循环中获得$ row-> class_id值。它工作正常,让我在一个数组中的总学生行,并将其保存在$ total_student_of_this_class变量中。我使用另一个foreach循环来存储第一个循环的结果,然后是第二个循环,依此类推。但是这个循环只给出了第一个循环结果。
我需要结合循环的全部迭代的所有数组。
$total_student_of_this_class =
$this->db->select('student_id')->where('class_id',
$row->class_id)->get('student')->result_array();
echo count($total_student_of_this_class);
// prints 2 in the first row of the output table and 5 in the second
row for me.
$total_student = array();
foreach ($total_student_of_this_class as $tt)
{
$total_student[] = $tt;
}
echo '<pre>';
print_r($total_student_of_this_class);
echo '</pre>'
echo count($total_student);
// prints only 2 outside the loop (not 7)
有人帮助我。
答案 0 :(得分:1)
这里的问题似乎是$total_student = array();
:在另一个循环中初始化数组它始终从零值数组开始,所以你只得到其中一次迭代的结果并且不收集全部DATAS。
您还可以查看array_merge php函数。