1、根据指定值进行去重
public function array_unset_tt($arr, $key) {
$res = array();
foreach ($arr as $value) {
//查看有没有重复项
if (isset($res[$value[$key]])) {
// 有则销毁
unset($value[$key]);
} else {
$res[$value[$key]] = $value;
}
}
return $res;
}
2、键值重新排序
public function reformKeys($array) {
if (!is_array($array)) {
return $array;
}
$keys = implode('', array_keys($array));
if (is_numeric($keys)) {
$array = array_values($array);
}
//$array = array_map('reform_keys', $array);
return $array;
}
3、按照某个值就行排序
// sort_asc为正序
// SORT_DESC为倒序
public function mySort($arrays, $sort_key, $sort_order = SORT_ASC, $sort_type = SORT_NUMERIC) {
if (empty($arrays)) {
return $arrays;
}
if (is_array($arrays)) {
foreach ($arrays as $array) {
if (is_array($array)) {
$key_arrays[] = $array[$sort_key];
} else {
return false;
}
}
} else {
return false;
}
array_multisort($key_arrays, $sort_order, $sort_type, $arrays);
return $arrays;
}
4、按照某个字段进行分割
// data目标数组
// $field=指定值
public function getNewarr($data, $field) {
$newarr = [];
foreach ($data as $key => $val) {
$i = 0;
foreach ($data as $k => $v) {
if ($val[$field] == $v[$field]) {
$newarr[$v[$field]][$i] = $v;
$i++;
}
}
}
$newarrs = [];
$j = 0;
foreach ($newarr as $key => $value) {
$newarrs[$j][$field] = $key;
$newarrs[$j]['list'] = $value;
$j++;
}
return $newarrs;
}