php中对二维数组的去重,合并,排序,分页操作,统计数组中所有值出现的次数。

废话不多说,直接上代码列子,简单易懂。

// 构造二维数组a
$array_a = array(
	'a' => 1;
	'b' => 2;
);
//构造二维数组b
$array_b = array(
	'a' => 2;
	'b' => 2;
);
// 将俩个数组合并,此方法不去重,如果想去重只用array_merge()方法就行
$array = array_merge_recursive($array_a, $array_b);
// 拼接起来的数组按照a的大小倒序
array_multisort(array_column($array, 'a'), SORT_DESC, $array);
// 统计数组中相同元素的数量,列如a :2, b:2
array_count_values($array); 
// 对数组进行分页操作,这边的pindex是第几页,psize是每页显示多少数据
$array = array_slice($array, ($psize*$pindex - $psize), $psize);
// 过滤数组中a为2的数据
  $users = array_filter($array, function($item){
    
    
    return $item['a'] !== 2;
  });
//去重
$tmp_arr = array();
foreach($arr as $k => $v)
{
    
    
if(in_array($v[$key], $tmp_arr))   //搜索$v[$key]是否在$tmp_arr数组中存在,若存在返回true,$key为'id'类似
{
    
    
	unset($arr[$k]); //销毁一个变量  如果$tmp_arr中已存在相同的值就删除该值
}
else {
    
    
    $tmp_arr[$k] = $v[$key];  //将不同的值放在该数组中保存
}

猜你喜欢

转载自blog.csdn.net/weixin_46304253/article/details/108358411
今日推荐