$value) { if (!in_array($value, $out)) { $out[$key] = $value; } } $out = array_values($out); return $out; } /** * 二维数组根据某个键排序 * @param array $arrays * @param string $sort_key * @param int $sort_order * @param int $sort_type * @return array */ public function sort(array $arrays, string $sort_key, $sort_order = SORT_ASC, $sort_type = SORT_NUMERIC): array { $key_arrays = array(); if (is_array($arrays)) { foreach ($arrays as $array) { if (is_array($array)) { $key_arrays[] = $array[$sort_key]; } else { return []; } } } else { return []; } array_multisort($key_arrays, $sort_order, $sort_type, $arrays); return $arrays; } /** * 数组删除空格 * @param array $arr * @return array */ public function trimArray(array $arr) { if (!is_array($arr)) { return $arr; } foreach ($arr as $key => $value) { if (is_array($value)) { $arr[$key] = $this->TrimArray($value); } else { $arr[$key] = $this->trimAll($value); } } return $arr; } /** * 字符串删除空格 * @param $str * @return string|string[] */ private function trimAll($str) { $oldchar = array(" ", " ", "\t", "\n", "\r"); $newchar = array("", "", "", "", ""); return str_replace($oldchar, $newchar, $str); } /** * 把json字符串或json对象转json数组 * @param $output * @return array */ public function toArray($output): array { if (is_array($output)) { return $output; } if (is_object($output)) { $output = json_encode($output, JSON_UNESCAPED_UNICODE); } return json_decode($output, true); } /** * @param $array * @return array */ public function valChunk($array,$name): array { $result = array(); $ar2 = []; foreach ($array as $key => $value) { foreach ($array as $k => $val) { if ($value["{$name}"] == $val["{$name}"]) { $ar2[] = $val; } } $result[$value["{$name}"]] = $ar2; $ar2 = []; } return $result; } }