浏览代码

new:1.ConvertNilToEmptyString把数据里的nil转成空字符串,并去除空格.

QiuSW 1 年之前
父节点
当前提交
72f9fe1420
共有 1 个文件被更改,包括 21 次插入0 次删除
  1. 21 0
      format/struct.go

+ 21 - 0
format/struct.go

@@ -63,3 +63,24 @@ func MapToStruct(input map[string]interface{}, output interface{}) error {
 	}
 	return nil
 }
+func ConvertNilToEmptyString(data interface{}) interface{} {
+	switch v := data.(type) {
+	case nil:
+		return ""
+	case map[string]interface{}:
+		for key, val := range v {
+			v[key] = ConvertNilToEmptyString(val)
+		}
+	case []interface{}:
+		for i, val := range v {
+			v[i] = ConvertNilToEmptyString(val)
+		}
+	}
+	//去除字符串左边和右边的空格
+	if reflect.TypeOf(data).Kind() == reflect.String {
+		data = strings.TrimLeft(data.(string), " ")
+		data = strings.TrimRight(data.(string), " ")
+	}
+
+	return data
+}