Php 捕获另一个数组中的数组

Php 捕获另一个数组中的数组,php,arrays,multidimensional-array,associative-array,Php,Arrays,Multidimensional Array,Associative Array,让我给你看一个我想做的例子。我明白了: $array = [ [ 'first_name' => 'John', 'last_name' => 'Doe', ], [ 'first_name' => 'Johny', 'last_name' => 'Dow', ], [ 'first_name' => 'Johnys', 'last_name' => 'Doesnot', ], [ 'fir

让我给你看一个我想做的例子。我明白了:

$array = [
[
    'first_name' => 'John',
    'last_name'  => 'Doe',
], 
[
    'first_name' => 'Johny',
    'last_name'  => 'Dow',
],  
[
    'first_name' => 'Johnys',
    'last_name'  => 'Doesnot',
], 
[
    'first_name' => 'Joe',
    'last_name'  => 'Dow',
], 
[
    'first_name' => 'Joes',
    'last_name'  => 'Down',
],
];
我想捕获最后一个数组,其中'last_name'=>'Dow',并更改此数组first_name和last_name的所有数据,还可能添加年龄

我认为array_过滤器在这种情况下可能会有所帮助,但我不确定如何处理它

有人能指导我如何做到这一点吗


谢谢大家!

因为您希望捕获最后一项,所以可以从数组末尾进行迭代,然后在捕获满足条件的第一项后中断循环:

对于$i=计数$array-1$i>=0$我-{ 如果$array[$i][last_name]==Dow{ $array[$i][first_name]=新的名字; $array[$i][last_name]=新的姓氏; $array[$i][age]=111; 打破 } }
或者,您可以使用在数组上进行迭代。将标志设置为true将保留键,允许我们通过其索引访问相应的项

foreach (array_reverse($array, true) as $index => $person) {
    if ($person['last_name'] == 'Dow') {
        // $array[$index]['first_name'] = 'some name';
        // $array[$index]['last_name'] = 'some name';
        $array[$index]['age'] = 25;

        break;
    }
}

echo '<pre>';
print_r($array);
echo '</pre>';

您是否需要始终编辑数组的最后一项,或与您的某些规则相匹配的项?不需要编辑与我的规则相匹配的项,可以是first_name或last_name。抓住那个特定的数组,修改这篇文章来做你的搜索:我不知道你到底需要什么,但可能会帮到你。就像…没错,兄弟,谢谢你!这是一个非常漂亮的解决方案,兄弟!非常感谢你!
Array
(
    [0] => Array
        (
            [first_name] => John
            [last_name] => Doe
        )

    [1] => Array
        (
            [first_name] => Johny
            [last_name] => Dow
        )

    [2] => Array
        (
            [first_name] => Johnys
            [last_name] => Doesnot
        )

    [3] => Array
        (
            [first_name] => Joe
            [last_name] => Dow
            [age] => 25
        )

    [4] => Array
        (
            [first_name] => Joes
            [last_name] => Down
        )

)