zoukankan      html  css  js  c++  java
  • PHP 二维数组按照指定键排序(正序或倒叙均可)

        public static function array_sort( $array, $keys, $type='asc' ) {
            if( !isset( $array ) || !is_array( $array ) || empty( $array ) ) return '';
            if( !isset( $keys ) || trim( $keys ) == '' ) return '';
            if( !isset( $type ) || $type == '' || !in_array( strtolower( $type ), array( 'asc', 'desc' ) ) ) return '';
           
            $keysvalue  = [];
            foreach( $array as $key => $val ) {
                $val[ $keys ]   = str_replace( '-', '', $val[ $keys ] );
                $val[ $keys ]   = str_replace( ' ', '', $val[ $keys ] );
                $val[ $keys ]   = str_replace( ':', '', $val[ $keys ] );
                $keysvalue[]    = $val[ $keys ];
            }
           
            asort( $keysvalue ); //key值排序
            reset( $keysvalue ); //指针重新指向数组第一个
            foreach( $keysvalue as $key => $vals )
                $keysort[] = $key;
           
            $keysvalue  = [];
            $count      = count( $keysort );
            if( strtolower( $type ) != 'asc' ) {
                for( $i = $count - 1; $i >= 0; $i-- )
                    $keysvalue[] = $array[ $keysort[ $i ] ];
            }else{
                for( $i = 0; $i < $count; $i++ )
                    $keysvalue[] = $array[ $keysort[ $i ] ];
            }
            return $keysvalue;
        }
  • 相关阅读:
    vue-cli(vue脚手架)简单流程
    windows环境之node.js安装与环境配置
    fiddler的下载和简单使用
    Linux 配置nginx 代理tomcat,配置ssl
    来聊一聊导出数据问题
    作为一个开发人员应该具备怎么样技术栈和职业素养
    NODEJS的误打误撞
    聊一下程序员的日常
    openstack安装部署私有云详细图文
    openstack:OpenStack架构详解,
  • 原文地址:https://www.cnblogs.com/wxgthinking/p/7884869.html
Copyright © 2011-2022 走看看