1.格式化为JSON字符串
public static function format2JsonString($data){
if (is_array($data)){
return json_encode($data, JSON_UNESCAPED_UNICODE);
}
return $data;
}
2.字符串转化为数组
public static function string2Array($data){
if (empty($data)) return [];
if (strpos($data, '[') === 0){
return json_decode($data, true);
}
return explode(',', $data);
}
3.格式化日期
public static function formatDatetime($timestamp = -1, $format = 'Y-m-d H:i:s'){
if ($timestamp == 0) return '';
$timestamp = $timestamp != -1 ? $timestamp : time(); //默认返回当前时间
return date($format, $timestamp);
}
4.格式化指定字段的日期
public static function formatDateTimeByField($data, $field = []){
$field = array_merge(Constant::$FormatDateTimeFields, $field);
foreach ($field as $item){
if (isset($data[$item])) $data[$item] = self::formatDatetime($data[$item]);
}
return $data;
}
5.二维数组排序
public static function arraySort($arr, $field, $sort = SORT_ASC){
$key = array_column($arr, $field);
# 第一个参数需要提供二维数组排序依据
# 第二个排序方式 SORT_ASC:正序 SORT_DESC:倒序
# 第三个参数 要排序的二维数组,改动直接操作在该数组上
# 排序能保证key不改变
array_multisort($key, $sort, $arr);
return $arr;
}