Menggabungkan 2 json jadi satu

saya membuat 2 json yang berbeda. kodenya seperti dibawah ini:

$json1 = {
    name: "tes",
    address: "Sumatera"
}

$json2 =  {
    class: "12",
    study: "ips"
}

yang saya mau tanyakan di php, saya mau menggabungkan $json1 & $json2 jadi satu dan seperti dibawah ini:

$json = {
    name: "tes",
    address: "Sumatera",
    class: "12",
    study: "ips"

}

bagaimana solusi untuk mengatasi masalah diatas.

avatar ikhwansr
@ikhwansr

68 Kontribusi 3 Poin

Diperbarui 5 tahun yang lalu

2 Jawaban:

Jawaban Terpilih

Idenya kamu bikin json datanya jadi array, karena cuma array yang punya fungsi untuk menggabung dengan "array_merge", setelah itu kembalikan lagi ke json dengan json_encode <pre> json_encode(array_merge(json_decode($a, true),json_decode($b, true))) </pre>

avatar hilmanski
@hilmanski

2686 Kontribusi 2135 Poin

Dipost 5 tahun yang lalu

Bisa kaya idenya mas @hilmanrdn atau langsung typecast aja jadi array. Nanti jadinya assosiatif array yang bisa digabungkan pakai array_merge

contoh:

<pre> $json1 = { name: "tes", address: "Sumatera" }

$json2 = { class: "12", study: "ips" }

$json1ToArray = (array) $json1; $json2ToArray = (array) $json2;

// (array) ini merupakan typecast, bisa dibaca lagi di <a href=' http://www.php.net/manual/en/language.types.array.php '> http://www.php.net/manual/en/language.types.array.php </a> // Untuk menggabungkannya dengan pakai array_merge karena object yang tadi sudah berubah menjadi array

$gabunganJson1DanJson2 = array_merge($json1ToArray, $json2ToArray);

// Tapi cara di atas tidak terlalu bagus digunakan jika banyak object2 di dalamnya // Info lebih lanjut mengenai hal kek gini <a href='http://ocramius.github.io/blog/fast-php-object-to-array-conversion/ '>http://ocramius.github.io/blog/fast-php-object-to-array-conversion/ </a> </pre>

avatar markeronly
@markeronly

378 Kontribusi 230 Poin

Dipost 5 tahun yang lalu

Login untuk ikut Jawaban