这些数组包含相同的键,如下面的主题(prop
是唯一的):
Check if associative array contains value, and retrieve key / position in array
<?php
$array = array(
array("prop" => "1", "content" => "text"),
array("prop" => "2", "content" => "text"),
array("prop" => "3", "content" => "text"),
array("prop" => "4", "content" => "text")
);
$found = current(array_filter($array, function($item) {
return isset($item['prop']) && 3 == $item['prop'];
}));
print_r($found);
我得到prop
3:
Array
(
[prop] => 3
[content] => text
)
所以我想将$array
中的值替换为:
array("prop" => "3", "content" => "replaced text")
答案 0 :(得分:3)
由于prop
是唯一的,只需使用prop
作为索引提取数组,然后以这种方式访问它:
$array = array_column($array, null, 'prop');
$array[3]['content'] = 'replaced text';
您可能希望使用isset
来确保$array[3]['content']
存在。