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

相关文章

php自定义函数call_user_func和call_user_func_array详解

call_user_func函数类似于一种特别的调用函数的方法,使用方法如下: 复制代码 代码如下: function a($b,$c) { echo $b; echo $c; } ca...

PHP 验证身份证是否合法的函数

话不多说,请看代码: function is_idcard( $id ) { $id = strtoupper($id); $regx = "/(^\d{15}$)|(^\d...

php中通过eval实现字符串格式的计算公式

有时候我们对每一种产品都有一个提成公式,而这个计算提成的公式是以字符串格式存在表中的当我们用这个计算公式时,他并不像我们写的:$a=2+3*5;这样简单的能计算出结果,而它是个字符串.所...

详解:——如何将图片储存在数据库里

如果你想把二进制的数据,比如说图片文件和HTML文件,直接保存在你的MySQL数据库,那么这篇文章就是为你而写的!我将告诉你怎样通过HTML表单来储存这些文件,怎样访问和使用这些文件。...

PHP中判断变量为空的几种方法小结

1. isset功能:判断变量是否被初始化 说明:它并不会判断变量是否为空,并且可以用来判断数组中元素是否被定义过注意:当使用isset来判断数组元素是否被初始化过时,它的效率比arra...