<?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);
- Output for 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.33, 8.2.0 - 8.2.29, 8.3.0 - 8.3.26, 8.4.1 - 8.4.13
- Array
(
[0] => Array
(
[id] => 3
[type] => default
[place] => 1
)
[1] => Array
(
[id] => 7
[type] => 1
[place] => 2
[description] => This is item place 2
[image] => this_is_the_image.png
)
[2] => Array
(
[id] => 3
[type] => default
[place] => 3
)
)
preferences:
153.07 ms | 408 KiB | 5 Q