PHP:array_flatten多维数组扁平化

简介: PHP:array_flatten多维数组扁平化

方法实现


/**
 * 多维数组扁平化
 * @param $array array
 * @return array
 */
if (!function_exists('array_flatten')) {
    function array_flatten($array)
    {
        $result = [];
        foreach ($array as $value) {
            if (is_array($value)) {
                $result = array_merge($result, array_flatten($value));
            } else {
                $result[] = $value;
            }
        }
        return $result;
    }
}

代码示例


<?php
$arr = [
    [
        '1', '2'
    ],
    [
        '1', '4', '5'
    ],
];
print_r(json_encode(array_flatten($arr)));
// ["1","2","1","4","5"]
// 去重处理,注意需要取值操作
print_r(json_encode(array_values(array_unique(array_flatten($arr)))));
// ["1","2","4","5"]
相关文章
|
5月前
|
JavaScript 前端开发 PHP
读boost::multi_array有感,多维数组实现(非类型模板,偏特化)
读boost::multi_array有感,多维数组实现(非类型模板,偏特化)
|
搜索推荐 算法 PHP
PHP 数组(Array) - 排序算法
PHP 数组(Array) - 排序算法
54 0
|
PHP 索引
PHP 数组(Array)
PHP 数组(Array)
70 0
|
PHP
php函数基础学习:array_chunk() 函数把一个数组分割为新的数组块
php函数基础学习:array_chunk() 函数把一个数组分割为新的数组块
63 0
PHP 多维数组排序
PHP 多维数组排序
|
JSON PHP 数据库
PHP:Laravel cast array json数据存数据库时unicode 编码问题和update更新不触发数据转换
PHP:Laravel cast array json数据存数据库时unicode 编码问题和update更新不触发数据转换
173 0
PHP的多维数组是干什么的?为什么需要多维数组?底层原理是什么?
PHP的多维数组是干什么的?为什么需要多维数组?底层原理是什么?
132 0
|
存储 JSON 安全
为什么我觉得GoFrame的garray比PHP的array还好用?
写过PHP的同学都知道 PHP的数组Array非常好用,特别灵活。我在写PHP之前使用Java做安卓开发,在接触PHP的数组Array之后,直呼太香了!
为什么我觉得GoFrame的garray比PHP的array还好用?
PHP 简单 对象 (object) 与 数组 (array) 的转换
PHP 简单 对象 (object) 与 数组 (array) 的转换