Categories: PHP

PHP – Menggabungkan array data berurutan yang muncul berkali-kali

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:

menjadi:
Kebetulan data pada gambar di atas hanya berurutan dan tidak berulang.

Namun kode program tadi apabila jadwal berulang pada hari yang sama tetap tertangani.

Semoga bermanfaat…

Bagikan
rasupe

Recent Posts

eBook: menjadi kaya dimasa kini dan masa depan

Bismillahirrohmaanirrohiim... Ebook ini menghadirkan wawasan mendalam mengenai pergeseran kekayaan dari uang, aset, tanah, dan bahan…

5 days ago

Tombol back tutup modal bootstrap tanpa kembali ke halaman sebelumnya

Bismillaahirrohmaanirrohiim... Jika kita membuat aplikasi web base menggunakan bootstrap, saat user membuka modal, kadangkala mereka…

7 days ago

Kode css yang berguna

Bismillaahirrohmaanirrohiim... Berikut ini kumpulan css yang berguna, untuk mengingat saja. Input atau button delay saat…

2 weeks ago

Grouping warna pada tabel dengan PHP

Bismillaahirrohmaanirrohiim... Berikut ini cara grouping warna baris pada tabel dengan PHP, dimana jika ada kode…

3 weeks ago

CMS Website Desain Interior – PHP MySQL

CMS (Content Management System) Web untuk Desain Interior adalah solusi lengkap untuk mempresentasikan bisnis desain…

1 month ago

Source code Template website sekolah dengan react js

Bismillaahirrohmaanirrohiim... Berikut ini source code yang dapat dimodifikasi untuk membuat front end website sekolah dengan…

2 months ago