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

yipeiwu_com7年前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程序设计有所帮助。

相关文章

PHP多个图片压缩成ZIP的方法

 本文实例为大家分享了PHP多个图片压缩成ZIP的具体代码,供大家参考,具体内容如下 可将多个文件压缩成一个zip压缩包,文件名可自定义(兼容中文文件名) <?...

php中 ob_start等函数截取标准输出的方法

最近在用PHP在cli下开发一款软件,遇到了这样的问题。我想将PHP脚本中输出的东西收集在一起,于是使用了ob_start和ob_end_flush这两个函数,确实有达到收集输出内容的作...

php UNIX时间戳用法详解

本文实例讲述了php UNIX时间戳用法。分享给大家供大家参考,具体如下: 时间戳是文件属性中的创建、修改、和访问时间。数字时间戳服务是Web网站安全服务项目之一,能提供电子文件的日期和...

修改PHP脚本使WordPress拦截垃圾评论的方法示例

拦截英文垃圾评论 由于绝大多数的垃圾评论都是英文的,所以国内不少朋友在使用 Some Chinese Please 插件,它可以有效地拦截内容中不带有中文字的comment和trackb...

非常实用的PHP常用函数汇总

本文实例总结了一些在php应用开发中常用到的函数,这些函数有字符操作,文件操作及其它的一些操作了,分享给大家供大家参考。具体如下: 1、PHP加密解密 PHP加密和解密函数可以用来加密一...