我有一个多维数组(包含subject_code,subject_name和grade)。在给出成绩和主题名称时,我需要提取subject_code。 Stackoverflow上有很多与 array_search 相关的回复,但只有一个字段搜索。是否有一种更优雅的方式来执行此搜索,而不是我下面的“拖网”代码:
function get_subject_code($subjects_array, $count_subs, $grade, $subject) {
for($i=0;$i<$count_subs;$i++){
if (($subjects_array[$i]['grade'] == $grade) && ($subjects_array[$i]['subject'] == $subject) ){
$lesson = $subjects_array[$i]['coursecode'];
}
}
return $lesson;
}
答案 0 :(得分:0)
你可以像这样array_filter,
$lessons = array_column(array_filter($subjects_array, function($v) use($grade, $subject){
return $v['grade'] == $grade && $v['subject'] == $subject;
}), 'subject_code');