博客列表 >php将一个未知多维数组转为一维数组并排序

php将一个未知多维数组转为一维数组并排序

猿数据
猿数据原创
2017年07月28日 22:49:08810浏览

$arr=array(

            1,

            2,

            array(12,5),

            array(

                7,

                8,

                array(9,10)

            ),

            array(

                2,

                array(

                    array(

                    10,

                    11,

                    array(

                        20,1

                        )

                    )

                )

            )

        );

          

   /*

        将多维数组转为一维数组,并排序;

        php将一个未知多维数组转为一维数组并排序;

        将一个多维数组转为一维数组,定义一个静态数组,每次遍历只要不是数组就往数组里压,不是数组继续回调,排序用冒泡排序,

      

    */

       

    function getarr($arr){

        //定义静态数组

        static $kk=[];

        foreach ($arr as $key => $v) {

            if(!is_array($v)){

                $kk[]=$v;

            }else{

                getarr($v);

            }

        }

          

        //冒泡排序法

        for ($i=0; $i <count($kk)-1 ; $i++) { 

            for ($j=0; $j <count($kk)-1-$i ; $j++) { 

                  

                if($kk[$j]>$kk[$j+1]){

                    $tmp=$kk[$j];

                    $kk[$j]=$kk[$j+1];

                    $kk[$j+1]=$tmp;

                }

            }

        }

  

        return $kk;

      

    }


声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议