<?php
$arr=array(
array(
'sv_id'=>1,
'm_id'=>1,
'sv_question1'=>20
),
array(
'sv_id'=>2,
'm_id'=>2,
'sv_question1'=>10
),
array(
'sv_id'=>3,
'm_id'=>1,
'sv_question1'=>20
),
array(
'sv_id'=>4,
'm_id'=>3,
'sv_question1'=>20
),
array(
'sv_id'=>5,
'm_id'=>2,
'sv_question1'=>10
)
);
//var_dump($arr);
$ar=array();
foreach($arr as $v){
if(empty($ar) || !in_array($v,$ar)){
$ar[$v['m_id']][$v['sv_id']]=$v;
}else{
foreach($ar as $ka=>$va){
if($ka==$v['m_id']){
$ar[$ka][$v['sv_id']]=$v;
}
}
}
}
echo "<pre>";
var_dump($ar);
<pre>array(3) {
[1]=>
array(2) {
[1]=>
array(3) {
["sv_id"]=>
int(1)
["m_id"]=>
int(1)
["sv_question1"]=>
int(20)
}
[3]=>
array(3) {
["sv_id"]=>
int(3)
["m_id"]=>
int(1)
["sv_question1"]=>
int(20)
}
}
[2]=>
array(2) {
[2]=>
array(3) {
["sv_id"]=>
int(2)
["m_id"]=>
int(2)
["sv_question1"]=>
int(10)
}
[5]=>
array(3) {
["sv_id"]=>
int(5)
["m_id"]=>
int(2)
["sv_question1"]=>
int(10)
}
}
[3]=>
array(1) {
[4]=>
array(3) {
["sv_id"]=>
int(4)
["m_id"]=>
int(3)
["sv_question1"]=>
int(20)
}
}
}