搜尋

首頁  >  問答  >  主體

javascript - 數字組合並問題

這是合併前的兩個陣列

這是合併後的陣列

#這個foreach怎麼寫?

迷茫迷茫2746 天前974

全部回覆(2)我來回復

  • 怪我咯

    怪我咯2017-06-28 09:25:28

    先說下我對主題目的理解吧,這兩個數組應該是兩個不同表取出來的,其中date和a_id應該是相同字段,合併也是以這兩個作為判斷依據,相同date和a_id就把資料合併到一個陣列裡面去,以下是代碼:

    $array1 = array(..); // 合併的第一個陣列
    $array2 = array(..); // 合併的第二個陣列
    $array = array_merge($array1 , $array2); / / 將兩數組合並
    $new_array = array();
    foreach($array as $v){

    foreach($v as $key => $val){
        if(array_key_exists($val['date'].'-'.$val['a_id'] , $new_array)){
            // 存在相同的数组下标说明两个数组有相同的date,a_id,那么直接合并
            $new_array[$val['date'].'-'.$val['a_id']] = array_merge($new_array[$val['date'].'-'.$val['a_id']],$val);
        }else{
            $new_array[$val['date'].'-'.$val['a_id']] = $val;
        }
    }

    }

    說明一下:處理之後的陣列new_array數組下標是date-a_id,以此作為唯一下標

    回覆
    0
  • 我想大声告诉你

    我想大声告诉你2017-06-28 09:25:28

    不知道按什麼來

    回覆
    0
  • 取消回覆