3v4l.org

run code in 300+ PHP versions simultaneously
<?php $string='[ { "id": "7ac648ce-18aa-11e9-b673-005056be36b2", "answer": "1", "id_question": "39", "pi": "very good", "ca": null, "pic": null, "new_deadline": null, "reason": null, "notes": null, "deadline": null }, { "id": "8653ef3d-18aa-11e9-b673-005056be36b2", "answer": "3", "id_question": "40", "pi": "no problem", "ca": null, "pic": null, "new_deadline": null, "reason": null, "notes": null, "deadline": null } ]'; $string2='[ { "id": "38", "question": "Kebersihan Meja Counter dan Meja Fincoy ", "type": "NON DOS", "last_root": "1", "exist_good": "1", "exist_not_good": "0", "not_exist": "1", "n_a": "0" }, { "id": "39", "question": "Seragam Sales Counter / Salesman* ", "type": "NON DOS", "last_root": "1", "exist_good": "1", "exist_not_good": "0", "not_exist": "1", "n_a": "0" }, { "id": "40", "question": "Kerapihan Sales Counter", "type": "NON DOS", "last_root": "1", "exist_good": "1", "exist_not_good": "0", "not_exist": "1", "n_a": "0" }, { "id": "42", "question": "Sales Guide", "type": "NON DOS", "last_root": "1", "exist_good": "1", "exist_not_good": "0", "not_exist": "1", "n_a": "0" }, { "id": "43", "question": "Product Card", "type": "NON DOS", "last_root": "1", "exist_good": "1", "exist_not_good": "0", "not_exist": "1", "n_a": "0" }, { "id": "44", "question": "Ketersediaan Buku Tamu", "type": "NON DOS", "last_root": "1", "exist_good": "1", "exist_not_good": "0", "not_exist": "1", "n_a": "0" }, { "id": "45", "question": "Ketersediaan Price List", "type": "NON DOS", "last_root": "1", "exist_good": "1", "exist_not_good": "0", "not_exist": "1", "n_a": "0" }, { "id": "46", "question": "Ketersedian Rak Brosur ", "type": "NON DOS", "last_root": "1", "exist_good": "1", "exist_not_good": "0", "not_exist": "1", "n_a": "0" }, { "id": "47", "question": "Ketersediaan Flyer*/brosur\t", "type": "NON DOS", "last_root": "1", "exist_good": "1", "exist_not_good": "0", "not_exist": "1", "n_a": "0" } ]'; $json = json_decode($string, true); $json2 = json_decode($string2, true); $array0=array(); foreach($json as $key) { $array0[$key['id_question']]=$key; } $array1=array(); foreach($json2 as $key) { $array1[$key['id']]=$key['question']; if(!isset($array0[$key['id']])) { $row=array(); $row["id"]=$key['question']; $row["id_question"]=$key['id']; $row["answer"]=null; $row["pi"]=null; $row["ca"]=null; $row["pic"]=null; $row["new_deadline"]=null; $row["reason"]=null; $row["notes"]=null; $row["deadline"]=null; $array0[]=$row; } } $array2=array(); foreach($array0 as $key) { if(isset($array1[trim($key['id_question'])])){ $key['question']=$array1[$key['id_question']]; } $key['id']=$key['id_question']; unset($key['id_question']); $array2[]=$key; } // echo // print_r($array2); // convert to json $json=json_encode($array2); print_r($json); die;
Output for 7.1.0 - 7.1.33, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.19, 8.3.0 - 8.3.4, 8.3.6 - 8.3.7
[{"id":"39","answer":"1","pi":"very good","ca":null,"pic":null,"new_deadline":null,"reason":null,"notes":null,"deadline":null,"question":"Seragam Sales Counter \/ Salesman* "},{"id":"40","answer":"3","pi":"no problem","ca":null,"pic":null,"new_deadline":null,"reason":null,"notes":null,"deadline":null,"question":"Kerapihan Sales Counter"},{"id":"38","answer":null,"pi":null,"ca":null,"pic":null,"new_deadline":null,"reason":null,"notes":null,"deadline":null,"question":"Kebersihan Meja Counter dan Meja Fincoy "},{"id":"42","answer":null,"pi":null,"ca":null,"pic":null,"new_deadline":null,"reason":null,"notes":null,"deadline":null,"question":"Sales Guide"},{"id":"43","answer":null,"pi":null,"ca":null,"pic":null,"new_deadline":null,"reason":null,"notes":null,"deadline":null,"question":"Product Card"},{"id":"44","answer":null,"pi":null,"ca":null,"pic":null,"new_deadline":null,"reason":null,"notes":null,"deadline":null,"question":"Ketersediaan Buku Tamu"},{"id":"45","answer":null,"pi":null,"ca":null,"pic":null,"new_deadline":null,"reason":null,"notes":null,"deadline":null,"question":"Ketersediaan Price List"},{"id":"46","answer":null,"pi":null,"ca":null,"pic":null,"new_deadline":null,"reason":null,"notes":null,"deadline":null,"question":"Ketersedian Rak Brosur "},{"id":"47","answer":null,"pi":null,"ca":null,"pic":null,"new_deadline":null,"reason":null,"notes":null,"deadline":null,"question":"Ketersediaan Flyer*\/brosur\t"}]
Output for 8.3.5
Warning: PHP Startup: Unable to load dynamic library 'sodium.so' (tried: /usr/lib/php/8.3.5/modules/sodium.so (libsodium.so.23: cannot open shared object file: No such file or directory), /usr/lib/php/8.3.5/modules/sodium.so.so (/usr/lib/php/8.3.5/modules/sodium.so.so: cannot open shared object file: No such file or directory)) in Unknown on line 0 [{"id":"39","answer":"1","pi":"very good","ca":null,"pic":null,"new_deadline":null,"reason":null,"notes":null,"deadline":null,"question":"Seragam Sales Counter \/ Salesman* "},{"id":"40","answer":"3","pi":"no problem","ca":null,"pic":null,"new_deadline":null,"reason":null,"notes":null,"deadline":null,"question":"Kerapihan Sales Counter"},{"id":"38","answer":null,"pi":null,"ca":null,"pic":null,"new_deadline":null,"reason":null,"notes":null,"deadline":null,"question":"Kebersihan Meja Counter dan Meja Fincoy "},{"id":"42","answer":null,"pi":null,"ca":null,"pic":null,"new_deadline":null,"reason":null,"notes":null,"deadline":null,"question":"Sales Guide"},{"id":"43","answer":null,"pi":null,"ca":null,"pic":null,"new_deadline":null,"reason":null,"notes":null,"deadline":null,"question":"Product Card"},{"id":"44","answer":null,"pi":null,"ca":null,"pic":null,"new_deadline":null,"reason":null,"notes":null,"deadline":null,"question":"Ketersediaan Buku Tamu"},{"id":"45","answer":null,"pi":null,"ca":null,"pic":null,"new_deadline":null,"reason":null,"notes":null,"deadline":null,"question":"Ketersediaan Price List"},{"id":"46","answer":null,"pi":null,"ca":null,"pic":null,"new_deadline":null,"reason":null,"notes":null,"deadline":null,"question":"Ketersedian Rak Brosur "},{"id":"47","answer":null,"pi":null,"ca":null,"pic":null,"new_deadline":null,"reason":null,"notes":null,"deadline":null,"question":"Ketersediaan Flyer*\/brosur\t"}]

preferences:
153.22 ms | 405 KiB | 214 Q