zoukankan      html  css  js  c++  java
  • PHP二维数组(或任意维数组)转换成一维数组的方法

    目录:

    • 1 array_reduce函数法
    • 2 array_walk_recursive函数法
    • 3 array_map函数法

    假设有下面一个二维数组:

    $arr = array(
        '0' => array('id' => 100, 'username' => 'a1'),
        '1' => array('id' => 101, 'username' => 'a2'),
        '2' => array('id' => 102, 'username' => 'a3'),
        '3' => array('id' => 103, 'username' => 'a4'),
        '4' => array('id' => 104, 'username' => 'a5'),
    );

    现在要转换成一维数组,有两种情况:

    一种是将指定列转换成一维数组,这在另一篇文章有总结:PHP提取多维数组指定一列的方法大全

    现在我们重点讲第二种情况,就是把所有的值都转换成一维数组,而且键值相同不会被覆盖,转换后的一维数组是这样的:

    $result = array(100, 'a1', 101, 'a2', 102, 'a3', 103, 'a4', 104, 'a5');

    3 array_map函数法

    array_maparray_reduce函数的方法类似,如下:

    $result = [];
    array_map(function ($value) use (&$result) {
        $result = array_merge($result, array_values($value));
    }, $arr);

    只是需要多声明一个空的$result数组。

    作者:赖忠标
    免责声明:文章、笔记等仅供分享、探讨、参考等学习之用,因此造成的任何后果概不负责。(如有错误、疏忽等问题,欢迎指正、讨论,谢谢)
    本文版权归作者和博客园共有,欢迎转载,但请务必在文章页面明显位置给出原文连接,谢谢配合。
  • 相关阅读:
    Python操作Mongo数据库
    Python正则模块
    Python时间模块
    Python协程(下)
    Python协程(中)
    Python协程(上)
    aiohttp
    常用排序算法的Python实现
    江苏省各地级市58同城租房数据
    百合网
  • 原文地址:https://www.cnblogs.com/lazb/p/15777623.html
Copyright © 2011-2022 走看看