나는 데이터베이스에서 그룹으로 제목과 동반 배열을 모으는 while 루프 안에 있습니다.배열별로 그룹화하는 좀 더 효율적인 방법이 있습니까?
내 데이터는 (내가 더 많은 필드가 필요하지만 간단하게하기 위해 나는 두를 보여주의하십시오) 다음과 같습니다 : 나는 while 루프 각 라인을 통해 실행 해요
**Title** | **Groups**
Random Title One | array(Group A)
Another Title | array(Group A, Group B, Group C, Group D, Group E)
. 이제 나는 그룹별로 이것을 보여주고 싶다. 이처럼 :
Group A: Random Title One, Another Title
Group B: Another Title
Group C: Another Title
Group D: Another Title
Group E: Another Title
나는이이 그룹을 통해가는 내 while 루프 내부 foreach 루프 함께 처리 할 볼 수있는 가장 좋은 방법.
<?php
foreach ($arrayGroups as $group) {
switch ($group) {
case "Group A":
$arrGroupA[]['title'] = $title;
break;
case "Group B":
$arrGroupB[]['title'] = $title;
break;
case "Group C":
$arrGroupC[]['title'] = $title;
break;
case "Group D":
$arrGroupD[]['title'] = $title;
break;
case "Group E":
$arrGroupE[]['title'] = $title;
break;
}
}
?>
는 그러나, 나는 더 이상 5 개 그룹이 없음을 알면서도, 나는이 방법을 좋아하지 않아이이 작업을 수행하는 가장 좋은 방법인지 의심이 같을 것이다 .
아이디어가 있으십니까?
foreach ($arrayGroups as $group) {
$groups[$group][] = array(
'title' => $title,
);
}
당신이 그것을하지만 빠른 성능이 현명 경우 $groups[groupName][some index]['title']
확실하지에 액세스 할 수 있습니다 그 방법을하지만, 그것은 당신을 수 있습니다 :
, 당신을 감사 내가 더 나은 다음 내 길을 좋아한다! 특히 그룹 이름은 하드 코딩되어 있지 않으므로 특히 그렇습니다. –