PHP实现根据数组的值进行分组的方法

yipeiwu_com6年前PHP代码库

本文实例讲述了PHP实现根据数组的值进行分组的方法。分享给大家供大家参考,具体如下:

PHP根据数组的值分组,php array中没有自带这个函数但是很常用,今天写了出来记录一下。

代码:

$_array = array(
    array(1,11,'2016-05-18'),
    array(2,11,'2016-05-18'),
    array(3,22,'2016-05-18'),
    array(4,22,'2016-05-18'),
    array(5,33,'2016-05-19'),
    array(6,33,'2016-05-19'),
    array(7,44,'2016-05-19'),
    array(8,44,'2016-05-19'),
    array(9,55,'2016-05-20'),
    array(10,55,'2016-05-20'),
);
var_dump(array_val_chunk($_array));
function array_val_chunk($array){
    $result = array();
    foreach ($array as $key => $value) {
      $result[$value[1].$value[2]][] = $value;
    }
    $ret = array();
    //这里把简直转成了数字的,方便同意处理
    foreach ($result as $key => $value) {
      array_push($ret, $value);
    }
    return $ret;
}

运行结果如下:

array(5) {
 [0]=>
 array(2) {
  [0]=>
  array(3) {
   [0]=>
   int(1)
   [1]=>
   int(11)
   [2]=>
   string(10) "2016-05-18"
  }
  [1]=>
  array(3) {
   [0]=>
   int(2)
   [1]=>
   int(11)
   [2]=>
   string(10) "2016-05-18"
  }
 }
 [1]=>
 array(2) {
  [0]=>
  array(3) {
   [0]=>
   int(3)
   [1]=>
   int(22)
   [2]=>
   string(10) "2016-05-18"
  }
  [1]=>
  array(3) {
   [0]=>
   int(4)
   [1]=>
   int(22)
   [2]=>
   string(10) "2016-05-18"
  }
 }
 [2]=>
 array(2) {
  [0]=>
  array(3) {
   [0]=>
   int(5)
   [1]=>
   int(33)
   [2]=>
   string(10) "2016-05-19"
  }
  [1]=>
  array(3) {
   [0]=>
   int(6)
   [1]=>
   int(33)
   [2]=>
   string(10) "2016-05-19"
  }
 }
 [3]=>
 array(2) {
  [0]=>
  array(3) {
   [0]=>
   int(7)
   [1]=>
   int(44)
   [2]=>
   string(10) "2016-05-19"
  }
  [1]=>
  array(3) {
   [0]=>
   int(8)
   [1]=>
   int(44)
   [2]=>
   string(10) "2016-05-19"
  }
 }
 [4]=>
 array(2) {
  [0]=>
  array(3) {
   [0]=>
   int(9)
   [1]=>
   int(55)
   [2]=>
   string(10) "2016-05-20"
  }
  [1]=>
  array(3) {
   [0]=>
   int(10)
   [1]=>
   int(55)
   [2]=>
   string(10) "2016-05-20"
  }
 }
}

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》、《php常用函数与技巧总结》、《PHP错误与异常处理方法总结》、《PHP基本语法入门教程》、《php面向对象程序设计入门教程》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总

希望本文所述对大家PHP程序设计有所帮助。

相关文章

Smarty模板学习笔记之Smarty简介

1、简介 Smarty是一个使用PHP写出来的模板PHP模板引擎,是目前业界最著名的PHP模板引擎之一。它分离了逻辑代码和外在的内容,提供了一种易于管理和使用的方法,用来将原本与HTML...

详解json在php中的应用

从5.2版本开始,PHP原生提供json_encode()和json_decode()函数,前者用于编码,后者用于解码。 一、json_encode() 该函数主要用来将数组和对象,转换...

php之CodeIgniter学习笔记

在使用数据库之前,我们最好将数据库进行自动连接:config/autoload.php自动加载 $autoload['libraries'] = array('database');一些...

phpstorm 正则匹配删除空行、注释行(替换注释行为空行)

phpstorm 正则匹配删除空行、注释行(替换注释行为空行)

使用phpstorm 来编写php 和javascript 代码,感觉还是不错的,用得也很舒服。 遇到了一个需求,有时候在阅读框架源代码的时候 , 想过滤(删除)掉源代码中的注释行,如果...

PHP读取XML格式文件的方法总结

本文实例总结了PHP读取XML格式文件的方法。分享给大家供大家参考,具体如下: books.xml文件: <books> <book> <author&...