【发布时间】:2013-05-08 09:05:47
【问题描述】:
下面是我的多维数组$prev_map_data:
Array
(
[0] => Array
(
[class_id] => 2
[class_name] => II
[class_checked] => 1
[class_subjects] => Array
(
[0] => Array
(
[cs_map_id] => 81
[subject_name] => 11 Engllish
[subject_checked] => 1
[teacher_cs_id] => 81
)
)
)
[1] => Array
(
[class_id] => 3
[class_name] => III
[class_checked] => 1
[class_subjects] => Array
(
[0] => Array
(
[cs_map_id] => 155
[subject_name] => Hidi
[subject_checked] => 1
[teacher_cs_id] => 155
)
[1] => Array
(
[cs_map_id] => 156
[subject_name] => 11 Maths
[subject_checked] => 1
[teacher_cs_id] => 156
)
[2] => Array
(
[cs_map_id] => 157
[subject_name] => 11 Science
[subject_checked] => 1
[teacher_cs_id] => 157
)
)
)
)
我想从键[cs_map_id] 中一一获取所有值,并将这些值推送到数组$data 中。但是收到警告
Warning: Invalid argument supplied for foreach()
我不明白我的代码有什么问题。任何人都可以帮助我改进我的代码并将值附加到新数组中吗?提前致谢。我的代码如下:
$prev_map_data = $objTeacherClassesSubjects->GetClassSubjectMappingsbyTeacherId ($request, $teacher_class_subjects_error_messages);
//print_d($prev_map_data);
$data = array();
foreach($prev_map_data as $map_id){
foreach($map_id as $ast){
foreach($ast as $tp){
//print_p($tp);
$tp['cs_map_id'];
array_push($data,$tp['cs_map_id']);
}
}
}
【问题讨论】:
-
这意味着您认为数组实际上不是数组。
-
请格式化您的代码并添加行号
-
@deceze:感谢您的建议。我已经给出了我现有的多维数组供您参考。看到你能纠正我的代码吗?
标签: php arrays multidimensional-array associative-array