如何在PHP中重命名子数组键?

php
2022-08-30 08:27:54

当我在一个名为$tags(多维数组)的变量上var_dump时,我得到这个:

Array
(
    [0] => Array
        (
            [name] => tabbing
            [url] => tabbing
        )

    [1] => Array
        (
            [name] => tabby ridiman
            [url] => tabby-ridiman
        )

    [2] => Array
        (
            [name] => tables
            [url] => tables
        )

    [3] => Array
        (
            [name] => tabloids
            [url] => tabloids
        )

    [4] => Array
        (
            [name] => taco bell
            [url] => taco-bell
        )

    [5] => Array
        (
            [name] => tacos
            [url] => tacos
        )
)

我想将所有名为“url”的数组键重命名为“value”。这样做的好方法是什么?


答案 1

您可以使用 array_map() 来执行此操作。

$tags = array_map(function($tag) {
    return array(
        'name' => $tag['name'],
        'value' => $tag['url']
    );
}, $tags);

答案 2

遍历,设置新键,取消设置旧键。

foreach($tags as &$val){
    $val['value'] = $val['url'];
    unset($val['url']);
}

推荐