$arr = array(
    array(
    'semesterid' => 29,
    'user_name'=>'test1'
    ),
    array(
    'semesterid' => 28,
    'user_name'=>'test2'
    ),
    array(
    'semesterid' =>30,
    'user_name'=>'test3'
    )
);
$arr2 = array(
     array(
    'classesid' => 14559,
    'semesterid'=>'29'
   'classesname'=>'劲松41班'
    ),
     array(
    'classesid' => 14530,
    'semesterid'=>'28'
   'classesname'=>'五路4班'
    ),
 array(
    'classesid' => 14230,
    'semesterid'=>'28'
   'classesname'=>'海定41班'
),
     array(
    'classesid' => 14549,
    'semesterid'=>'30'
   'classesname'=>'安贞1班'
    ),
);怎么根据2个数组的semesterid形成如下数组:
$good_arr =array(
    array(
    'semesterid' => 29,
    'user_name'=>'test1',
    ‘class’= array(
                'classesid' => 14559,
                'semesterid'=>'29'
               'classesname'=>'劲松41班'
               ),
    array(
     'semesterid' => 28,
    'user_name'=>'test2',
     ‘class’=     array(
                'classesid' => 14530,
                'semesterid'=>'28'
               'classesname'=>'五路4班'
          ),
                 array(
                 'classesid' => 14230,
                 'semesterid'=>'28'
                 'classesname'=>'海定41班'
             ),
    ),
     array(
    'semesterid' =>30,
    'user_name'=>'test3'
   ‘class’=     array(
    'classesid' => 14549,
    'semesterid'=>'30'
   'classesname'=>'安贞1班'
    ),
    )
    )
我的方案:有更好的吗?O(∩_∩)O谢谢
foreach($result_semester as $key){
foreach($result_classes as $k=>$v){
if($key['id']==$v['semesterid']){
$result_semester[$key['id']]['classs']=$result_classes;
}
}
}

解决方案 »

  1.   

    $arr = array(
      array(
        'semesterid' => 29,
        'user_name' => 'test1'
        ),
      array(
        'semesterid' => 28,
        'user_name' => 'test2'
        ),
      array(
        'semesterid' =>30,
        'user_name' => 'test3'
        )
    );
    $arr2 = array(
      array(
        'classesid' => 14559,
        'semesterid' => '29',
        'classesname' => '劲松41班'
        ),
      array(
        'classesid' => 14530,
        'semesterid' => '28',
        'classesname' => '五路4班'
        ),
      array(
        'classesid' => 14230,
        'semesterid' => '28',
        'classesname' => '海定41班',
        ),
      array(
        'classesid' => 14549,
        'semesterid'=>'30',
        'classesname' => '安贞1班'
        ),
    );
    foreach($arr as $item) $good_arr[$item['semesterid']] = $item;
    foreach($arr2 as $item) $good_arr[$item['semesterid']]['class'][] = $item;
    print_r($good_arr);Array
    (
        [29] => Array
            (
                [semesterid] => 29
                [user_name] => test1
                [class] => Array
                    (
                        [0] => Array
                            (
                                [classesid] => 14559
                                [semesterid] => 29
                                [classesname] => 劲松41班
                            )                )        )    [28] => Array
            (
                [semesterid] => 28
                [user_name] => test2
                [class] => Array
                    (
                        [0] => Array
                            (
                                [classesid] => 14530
                                [semesterid] => 28
                                [classesname] => 五路4班
                            )                    [1] => Array
                            (
                                [classesid] => 14230
                                [semesterid] => 28
                                [classesname] => 海定41班
                            )                )        )    [30] => Array
            (
                [semesterid] => 30
                [user_name] => test3
                [class] => Array
                    (
                        [0] => Array
                            (
                                [classesid] => 14549
                                [semesterid] => 30
                                [classesname] => 安贞1班
                            )                )        ))
      

  2.   

    数组一array(3) {
      [30]=>
      array(2) {
        ["id"]=>
        string(2) "30"
        ["sname"]=>
        string(7) "2014秋"
      }
      [29]=>
      array(2) {
        ["id"]=>
        string(2) "29"
        ["sname"]=>
        string(7) "2014夏"
      }
      [28]=>
      array(2) {
        ["id"]=>
        string(2) "28"
        ["sname"]=>
        string(7) "2014春"
      }
    }
    数组二
    array(3) {
      [0]=>
      array(7) {
        ["classesid"]=>
        string(5) "12543"
        ["semesterid"]=>
        string(2) "28"
        ["classesname"]=>
        string(11) "劲松44班"
        ["gradeid"]=>
        string(1) "1"
        ["gradeid0"]=>
        string(1) "1"
        ["gradeid1"]=>
        string(1) "0"
        ["fullname"]=>
        string(18) "2014春劲松44班"
      }
      [1]=>
      array(7) {
        ["classesid"]=>
        string(5) "14559"
        ["semesterid"]=>
        string(2) "29"
        ["classesname"]=>
        string(15) "4夏劲松41班"
        ["gradeid"]=>
        string(1) "2"
        ["gradeid0"]=>
        string(1) "6"
        ["gradeid1"]=>
        string(1) "0"
        ["fullname"]=>
        string(20) "  2014夏劲松41班"
      }
      [2]=>
      array(7) {
        ["classesid"]=>
        string(5) "15651"
        ["semesterid"]=>
        string(2) "30"
        ["classesname"]=>
        string(11) "劲松38班"
        ["gradeid"]=>
        string(1) "2"
        ["gradeid0"]=>
        string(1) "2"
        ["gradeid1"]=>
        string(1) "0"
        ["fullname"]=>
        string(18) "2014秋劲松38班"
      }
    }
    生成如下数组
    array(3) {
      [30]=>
      array(3) {
        ["id"]=>
        string(2) "30"
        ["sname"]=>
        string(7) "2014秋"
        ["classs"]=>
        array(3) {      
          [0]=>
          array(7) {
            ["classesid"]=>
            string(5) "15651"
            ["semesterid"]=>
            string(2) "30"
            ["classesname"]=>
            string(11) "劲松38班"
            ["gradeid"]=>
            string(1) "2"
            ["gradeid0"]=>
            string(1) "2"
            ["gradeid1"]=>
            string(1) "0"
            ["fullname"]=>
            string(18) "2014秋劲松38班"
          }
        }
      }
      [29]=>
      array(3) {
        ["id"]=>
        string(2) "29"
        ["sname"]=>
        string(7) "2014夏"
        ["classs"]=>
        array(3) {      [0]=>
          array(7) {
            ["classesid"]=>
            string(5) "14559"
            ["semesterid"]=>
            string(2) "29"
            ["classesname"]=>
            string(15) "4夏劲松41班"
            ["gradeid"]=>
            string(1) "2"
            ["gradeid0"]=>
            string(1) "6"
            ["gradeid1"]=>
            string(1) "0"
            ["fullname"]=>
            string(20) "  2014夏劲松41班"
          }
          [1]=>
          array(7) {
            ["classesid"]=>
            string(5) "15361"
            ["semesterid"]=>
            string(2) "29"
            ["classesname"]=>
            string(11) "劲松78班"
            ["gradeid"]=>
            string(1) "2"
            ["gradeid0"]=>
            string(1) "2"
            ["gradeid1"]=>
            string(1) "0"
            ["fullname"]=>
            string(18) "2014秋劲松78班"
          }
        }
      }
      [28]=>
      array(3) {
        ["id"]=>
        string(2) "28"
        ["sname"]=>
        string(7) "2014春"
        ["classs"]=>
        array(3) {
          array(7) {
            ["classesid"]=>
            string(5) "12543"
            ["semesterid"]=>
            string(2) "28"
            ["classesname"]=>
            string(11) "劲松44班"
            ["gradeid"]=>
            string(1) "1"
            ["gradeid0"]=>
            string(1) "1"
            ["gradeid1"]=>
            string(1) "0"
            ["fullname"]=>
            string(18) "2014春劲松44班"
          } 
        }
      }
    }