php怎么去除二维键

fiy 其他 107

回复

共3条回复 我来回复
  • fiy的头像
    fiy
    Worktile&PingCode市场小伙伴
    评论

    要去除二维数组的键,可以使用PHP中的array_values()函数。该函数可以返回一个新的数组,其中只包含原数组中的值,而不包括键。下面是具体的使用示例:

    “`php
    ‘Tom’, ‘age’ => 20),
    array(‘name’ => ‘Jerry’, ‘age’ => 25),
    array(‘name’ => ‘Alice’, ‘age’ => 30)
    );

    // 使用array_values()函数去除键
    $newArray = array_map(‘array_values’, $originalArray);

    // 打印处理后的新数组
    print_r($newArray);
    ?>
    “`

    以上代码输出的结果如下:

    “`
    Array
    (
    [0] => Array
    (
    [0] => Tom
    [1] => 20
    )

    [1] => Array
    (
    [0] => Jerry
    [1] => 25
    )

    [2] => Array
    (
    [0] => Alice
    [1] => 30
    )

    )
    “`

    可以看到,处理后的新数组中只包含原数组中的值,而键被去除了。希望对你有帮助!

    2年前 0条评论
  • 不及物动词的头像
    不及物动词
    这个人很懒,什么都没有留下~
    评论

    在PHP中,可以使用`array_column()`函数来获取二维数组中特定键的值,并去除其他键。`array_column()`函数可用于从给定的多维数组中获取指定的键的值并作为所需结果返回。以下是使用`array_column()`函数去除二维数组中特定键的示例:

    “`php
    // 原始的二维数组
    $array = [
    [‘id’ => 1, ‘name’ => ‘John’, ‘age’ => 20],
    [‘id’ => 2, ‘name’ => ‘Mary’, ‘age’ => 25],
    [‘id’ => 3, ‘name’ => ‘Peter’, ‘age’ => 30]
    ];

    // 获取去除了’name’键的二维数组
    $newArray = array_map(function($item) {
    unset($item[‘name’]);
    return $item;
    }, $array);

    print_r($newArray);
    “`

    上述代码将输出以下结果:

    “`
    Array
    (
    [0] => Array
    (
    [id] => 1
    [age] => 20
    )

    [1] => Array
    (
    [id] => 2
    [age] => 25
    )

    [2] => Array
    (
    [id] => 3
    [age] => 30
    )
    )
    “`

    如上所示,通过使用`array_map()`函数与匿名函数,在每个数组项上使用`unset()`函数去除了’name’键。

    另外,如果要去除多个键,可以在匿名函数中通过多次调用`unset()`函数去除相应的键。如果要保留某些键,可以在匿名函数中添加条件判断逻辑来控制是否去除相应的键。

    需要注意的是,以上示例中使用的是匿名函数,如果你的PHP版本较低,可能不支持匿名函数,你可以为该函数定义一个具名函数来进行操作,效果一样。

    除了以上的方法,还可以使用循环遍历的方式去除二维数组的键。以下是一个使用循环遍历的示例:

    “`php
    // 原始的二维数组
    $array = [
    [‘id’ => 1, ‘name’ => ‘John’, ‘age’ => 20],
    [‘id’ => 2, ‘name’ => ‘Mary’, ‘age’ => 25],
    [‘id’ => 3, ‘name’ => ‘Peter’, ‘age’ => 30]
    ];

    // 去除’name’键的二维数组
    $newArray = [];
    foreach ($array as $item) {
    unset($item[‘name’]);
    $newArray[] = $item;
    }

    print_r($newArray);
    “`

    此代码将产生与前面示例相同的输出。通过遍历二维数组,并使用`unset()`函数去除相应的键,然后将去除键后的项添加到新数组中。

    需要注意的是,无论是使用`array_map()`函数还是使用循环遍历的方法,原始的二维数组都不会被修改。新的数组是通过去除指定键创建的。

    综上所述,可以使用`array_column()`函数、`array_map()`函数与`unset()`函数或循环遍历的方法来去除二维数组的键。根据实际情况选择适合的方法,并根据需要进行相应的逻辑处理。

    2年前 0条评论
  • worktile的头像
    worktile
    Worktile官方账号
    评论

    在PHP中,可以通过使用array_map函数来去除二维数组的键值。array_map函数可以对数组的每个元素应用一个回调函数,并返回一个新的数组,其中包含了原始数组中每个元素经过回调函数处理后的结果。

    具体的操作流程如下:

    1. 创建一个二维数组,包含多个键值对:

    “`
    $originalArray = [
    [“name” => “John”, “age” => 25],
    [“name” => “Jane”, “age” => 30],
    [“name” => “Bob”, “age” => 35]
    ];
    “`

    2. 定义一个回调函数,用于处理二维数组的每个元素。在这个回调函数中,我们可以使用PHP的内置函数array_values来获取每个元素的值,并返回一个新的索引数组:

    “`
    function removeKeys($array) {
    return array_values($array);
    }
    “`

    3. 调用array_map函数,将原始数组和回调函数作为参数传递给它,并将返回的新数组赋值给一个变量:

    “`
    $newArray = array_map(“removeKeys”, $originalArray);
    “`

    4. 打印新数组的内容,确认二维键已被去除:

    “`
    print_r($newArray);
    “`

    这样就完成了去除二维数组键值的操作。

    完整的代码如下:

    “`
    $originalArray = [
    [“name” => “John”, “age” => 25],
    [“name” => “Jane”, “age” => 30],
    [“name” => “Bob”, “age” => 35]
    ];

    function removeKeys($array) {
    return array_values($array);
    }

    $newArray = array_map(“removeKeys”, $originalArray);

    print_r($newArray);
    “`

    运行这段代码,将会输出以下结果:

    “`
    Array
    (
    [0] => Array
    (
    [0] => John
    [1] => 25
    )

    [1] => Array
    (
    [0] => Jane
    [1] => 30
    )

    [2] => Array
    (
    [0] => Bob
    [1] => 35
    )

    )
    “`

    这样,你就成功地去除了二维数组的键值。

    2年前 0条评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部