SHOW:
|
|
- or go back to the newest paste.
| 1 | <?php | |
| 2 | - | $data = [ |
| 2 | + | |
| 3 | $data = | |
| 4 | [ | |
| 5 | [ | |
| 6 | 'hak' => '12', | |
| 7 | 'tambahan' => '6', | |
| 8 | 'sisa' => '12', | |
| 9 | 'tahun' => '2019' | |
| 10 | ], | |
| 11 | [ | |
| 12 | 'hak' => '12', | |
| 13 | 'tambahan' => '6', | |
| 14 | 'sisa' => '12', | |
| 15 | 'tahun' => '2021' | |
| 16 | ] | |
| 17 | - | $tahun = [ |
| 17 | + | |
| 18 | ||
| 19 | $arTahun = | |
| 20 | [ | |
| 21 | '2019', | |
| 22 | '2020', | |
| 23 | - | for($i=0;$i<count($tahun);$i++){
|
| 23 | + | |
| 24 | - | $tahun == $tahun[$i]; |
| 24 | + | |
| 25 | ||
| 26 | $newdata = | |
| 27 | [ | |
| 28 | 'hak' => 0, | |
| 29 | 'tambahan' => 0, | |
| 30 | 'sisa' => 0, | |
| 31 | 'tahun' => 0 | |
| 32 | ]; | |
| 33 | for($i=0; $i < count($arTahun); $i++) | |
| 34 | {
| |
| 35 | $tahun = $arTahun[$i]; | |
| 36 | $result[$tahun] = $newdata; | |
| 37 | $result[$tahun]['tahun'] = $tahun; | |
| 38 | /* | |
| 39 | $filterData = array_filter($data, function($entry) {
| |
| 40 | global $tahun; | |
| 41 | - | return $data; |
| 41 | + | |
| 42 | } ); | |
| 43 | $newdata = [ | |
| 44 | 'hak' => '12', | |
| 45 | 'tambahan' => '0', | |
| 46 | 'sisa' => '0', | |
| 47 | 'tahun' => $tahun | |
| 48 | ]; | |
| 49 | if(count($filterData)==0){
| |
| 50 | $data = array_push($newdata); | |
| 51 | } | |
| 52 | */ | |
| 53 | } | |
| 54 | ||
| 55 | foreach( $data as $row ) | |
| 56 | {
| |
| 57 | $tahun = $row['tahun']; | |
| 58 | foreach($row as $key => $val) | |
| 59 | {
| |
| 60 | if($key != 'tahun') | |
| 61 | {
| |
| 62 | if(!isset($result[$tahun][$key])) | |
| 63 | $result[$tahun][$key] = 0; | |
| 64 | ||
| 65 | $result[$tahun][$key]+= (int) $val; | |
| 66 | } | |
| 67 | ||
| 68 | } | |
| 69 | ||
| 70 | } | |
| 71 | ||
| 72 | print_r( $result ); | |
| 73 | ?> | |
| 74 | ||
| 75 | //hasil yang diinginkan: | |
| 76 | ||
| 77 | [ { hak: '12', tambahan: '6', sisa: '12', tahun: '2019' },
| |
| 78 | { hak: '12', tambahan: '0', sisa: '0', tahun: '2020' },
| |
| 79 | { hak: '12', tambahan: '6', sisa: '12', tahun: '2021' } ] |