Postingan lainnya
Dua data json yang sama.
Disini aku punya 2 data json yang dimana dari dua data itu jika ada yang sama maka tidak usah di munculkan.
$model1 = [
[
'judul_kontrak' => 'aa',
'no_kontrak' => '01'
],
[
'judul_kontrak' => 'bb',
'no_kontrak' => '02'
]
];
$model2 = [
[
'nama_proyek' => 'aa',
'no_kontrak' => '08'
],
[
'nama_proyek' => 'cc',
'no_kontrak' => '09'
]
];
$arr = [];
$proyek = [];
foreach ($model1 as $m1) {
$proyek['nama_proyek'] = $m1['judul_kontrak'];
foreach($model2 as $m2){
if(trim(strtolower($m1['judul_kontrak'])) == trim(strtolower($m2['nama_proyek']))){
$proyek = [];
}
}
$arr[] = $proyek;
}
return $arr;
didalam model1 judul_kontrak dan model2 nama_proyek itu ada data yang sama yaitu aa nah si aa sama si cc yang di model2 gak usah dimunculin yang di munculin hanya model1 aja tapi kalo model1 ada yang sama, sama model2 maka gak usah ditampilkan.
Tanggapan
Tujuan akhirnya seperti apa? hasil array yang diinginkan coba dikasih contohnya di atas
1 Jawaban:
<div>Karena ini loop setiap elemen, maka walaupun di loop pertama tidak masuk, tapi karena di element berikutnya sudah beda lagi, maka akan masuk (karena tidak sama judul_kontraknya<br>Conoh 'bb' dan 'aa'. meskipun 'aa' pertama memenuhi syarat.<br><br>Ide kasar saya:<br>- Gabungkan semuanya menjadi satu array (kita sebut saja $allItems).<br>- Siapkan array kosong baru, kita sebut $uniqueArray<br>- Loop $allItems, dan uji apakah $allItems[index]['judul_kontrak'] = sudah ada di $uniqueArray. Jika belum masukkan, jika sudah, tidak usah masukkan</div>