3v4l.org

run code in 300+ PHP versions simultaneously
<?php $json = <<<EOD [ { "id": "3", "type": "default", "place": "1" }, { "id": "3", "type": "default", "place": "2" }, { "id": "3", "type": "default", "place": "3" } ] EOD; $array = json_decode($json, true); // Here is trick; get the key of the array using array_column $key = array_search('2', array_column($array, 'place')); // If any key found modify the array if ($key && array_key_exists($key, $array)) { $array[$key] = [ 'id' => 7, 'type' => 1, 'place' => 2, 'description' => 'This is item place 2', 'image' => 'this_is_the_image.png', ]; } print_r($array);

preferences:
33.66 ms | 407 KiB | 5 Q