zoukankan      html  css  js  c++  java
  • PHP 按照指定数量分割数组

    <?php
     
     
    /**
     * 系统辅助类
     * @date    2019年7月2日
     * @comment
     *
     */
    class SystemUtils
    {
        
        private static $_instance;
        private function __construct()
        {
            
        }
        
        public static function getInstance()
        {
            if( null == self::$_instance )
            {
                self::$_instance = new self();
            }
            return self::$_instance;
        }
        
        
        
        /**
         * 按照指定数量分块
         * @datetime 2019年7月2日  下午5:50:55
         * @comment    
         * 
         * @param unknown $data
         * @param number $num
         * @return array
         */
        public function split( $data, $num = 5 )
        {
            
            $arrRet = array();
            if( !isset( $data ) || empty( $data ) )
            {
                return $arrRet;
            }
            
            $iCount = count( $data )/$num;
            if( !is_int( $iCount ) )
            {
                $iCount = ceil( $iCount );
            }
            else
            {
                $iCount += 1;
            }
            for( $i=0; $i<$iCount;++$i )
            {
                $arrInfos = array_slice( $data, $i*$num, $num );
                if( empty( $arrInfos ) )
                {
                    continue;
                }
                $arrRet[] = $arrInfos;
                unset( $arrInfos );
            }
            
            return $arrRet;
            
        }
        
    }

    示例数码:

    $data = array( 1,2,3,4,5,6,7,8,9,10, 100 );
           
    $util = SystemUtils::getInstance();
    $res = $util->split( $data, 2 );
    echo '<pre>';
    var_dump( $res );
    echo '</pre>';
    exit;

    示例结果:

    array(6) {
      [0]=>
      array(2) {
        [0]=>
        int(1)
        [1]=>
        int(2)
      }
      [1]=>
      array(2) {
        [0]=>
        int(3)
        [1]=>
        int(4)
      }
      [2]=>
      array(2) {
        [0]=>
        int(5)
        [1]=>
        int(6)
      }
      [3]=>
      array(2) {
        [0]=>
        int(7)
        [1]=>
        int(8)
      }
      [4]=>
      array(2) {
        [0]=>
        int(9)
        [1]=>
        int(10)
      }
      [5]=>
      array(1) {
        [0]=>
        int(100)
      }
    }
    ————————————————
    版权声明:本文为CSDN博主「田小涛」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/Q718330882/article/details/94471321
  • 相关阅读:
    使用Anaconda安装TensorFlow
    更新pip源/anaconda源
    PHP 中 config.m4 的探索
    有趣的智力题
    工作中MySql的了解到的小技巧
    一篇关于PHP性能的文章
    eslasticsearch操作集锦
    curl 命令详解~~
    Nginx 调优经验记录
    Elasticsearch安装使用
  • 原文地址:https://www.cnblogs.com/bluealine/p/11666641.html
Copyright © 2011-2022 走看看