Bismillaahirrohmaanirrohiim…
Sekitar dua hari saya membuat kode PHP untuk menggabungkan data array yang muncul berurutan namun muncul berkali-kali.
Ini terdapat dalam pembuatan data jadwal pelajaran, dimana setiap mata pelajaran dikelompokkan berdasarkan mata pelajaran, namun ada juga di hari yang sama mata pelajaran muncul di jam yang berbeda.
Misalnya mata pelajaran Bhs Indonesia pada hari kamis ada pada jam ke 3-4 dan 7-8. Tujuannya adalah mata pelajaran Bhs Indonesia dikelompokkan data ke 1 = 3-4 dan data ke 2 = 7-8.
Berikut kodenya:
//data dalam array bisa muncul berkali2 namun tetap mempertahankan urutannya. //coba gabungkan array yg sama scr berurutan=sukses alhamdulillah $gabs = array(); $gabs_temp = array(); $iddata_prev = ''; $idx = 0; foreach ($data_arr as $arr1) { $iddata = $arr1['iddata']; if (!isset($gabs_temp[$iddata])) { $idx++; $gabs[$idx][$iddata]['data_mulai'] = $arr1; $gabs_temp[$iddata] = ''; if (isset($gabs_temp[$iddata_prev])) { unset($gabs_temp[$iddata_prev]); } } else { $gabs[$idx][$iddata]['data_selesai'] = $arr1; } $iddata_prev = $iddata; } var_dump($gabs);
Data asalnya:
Namun kode program tadi apabila jadwal berulang pada hari yang sama tetap tertangani.
Semoga bermanfaat…