PHP
·
发表于 5年以前
·
阅读量:8305
本文实例讲述了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程序设计有所帮助。