• php实战案例记录(24)不要键名只保留值的算法


    php中对数组 $originalArray = array(
    “name” => “John”,
    “age” => 25,
    “city” => “New York”
    )仅去除键名保留值的算法是什么

    array_values()` 函数

    在 PHP 中,你可以使用 array_values() 函数来去掉数组的键名。该函数会返回一个新数组,其中包含原始数组的所有值,但键名会被重新索引为连续的数字。

    下面是一个示例代码

    $originalArray = array(
        "name" => "John",
        "age" => 25,
        "city" => "New York"
    );
    
    $newArray = array_values($originalArray);
    
    print_r($newArray);
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    输出结果将会是:

    Array
    (
        [0] => John
        [1] => 25
        [2] => New York
    )
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    使用 array_values() 函数后,新数组 $newArray 的键名会被重新索引为从 0 开始的连续数字。原始数组中的键名则被忽略。

    使用 array_map() 函数:

    $originalArray = array(
        "name" => "John",
        "age" => 25,
        "city" => "New York"
    );
    
    $newArray = array_map('current', $originalArray);
    
    print_r($newArray);
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9

    输出结果与 array_values() 函数相同:

    Array
    (
        [0] => John
        [1] => 25
        [2] => New York
    )
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    使用 foreach 循环:

    $originalArray = array(
        "name" => "John",
        "age" => 25,
        "city" => "New York"
    );
    
    $newArray = array();
    
    foreach ($originalArray as $value) {
        $newArray[] = $value;
    }
    
    print_r($newArray);
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13

    输出结果也与 array_values() 函数相同:

    Array
    (
        [0] => John
        [1] => 25
        [2] => New York
    )
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    使用 array_column() 函数:

    array_column() 函数可以提取数组中特定列的值,并返回一个新数组。在某些情况下,如果原始数组的键名是数字或与要提取的列名无关,可以使用 array_column() 函数来去除键名。例如:

    $originalArray = array(
        "name" => "John",
        "age" => 25,
        "city" => "New York"
    );
    
    $newArray = array_column($originalArray, null, 'name');
    $newArray = array_values($newArray);
    
    print_r($newArray);
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    虽然这里使用了 array_column() 函数,但实际上它间接地移除了键名。输出结果仍然与之前的方法相同。

    使用 array_combine() 函数:

    array_combine() 函数可以将一个数组的值作为键名,另一个数组的值作为键值,并返回一个新的关联数组。如果使用 array_combine() 函数将原始数组的值作为键名,将相同的值作为键值,并将结果赋值给一个新变量,那么新数组将只包含值,没有键名。例如:

    $originalArray = array(
        "name" => "John",
        "age" => 25,
        "city" => "New York"
    );
    
    $newArray = array_combine(array_values($originalArray), $originalArray);
    $newArray = array_values($newArray);
    
    print_r($newArray);
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10

    @漏刻有时

  • 相关阅读:
    条例26~30(实现)
    【EMC】第七届电磁兼容与电路保护研讨会笔记
    【深度学习】实验 — 动手实现 GPT【三】:LLM架构、LayerNorm、GELU激活函数
    以飞地园区为样本,看雨花与韶山如何奏响长株潭一体化发展高歌
    Postman+Newman生成测试报告
    ES10 新特性
    leetcode 671. 二叉树中第二小的节点(java)
    Vue ref & props & mixin
    chatgpt赋能python:Python文件备份:保障数据安全,高效便捷的备份方案
    闭包的定义,原理,应用场景,优点,缺点
  • 原文地址:https://blog.csdn.net/weixin_41290949/article/details/133753777