github.com/gogf/gf@v1.16.9/.example/util/gvalid/gvalid.go (about) 1 package main 2 3 import ( 4 "context" 5 "github.com/gogf/gf/frame/g" 6 "github.com/gogf/gf/util/gvalid" 7 ) 8 9 func main() { 10 //rule := "length:6,16" 11 //if m := gvalid.Check(context.TODO(), "123456", rule, nil); m != nil { 12 // fmt.Println(m) 13 //} 14 //if m := gvalid.Check(context.TODO(), "12345", rule, nil); m != nil { 15 // fmt.Println(m) 16 // // map[length:字段长度为6到16个字符] 17 //} 18 19 //rule := "integer|between:6,16" 20 //msgs := "请输入一个整数|参数大小不对啊老铁" 21 //fmt.Println(gvalid.Check(context.TODO(), "5.66", rule, msgs)) 22 //// map[integer:请输入一个整数 between:参数大小不对啊老铁] 23 24 //// 参数长度至少为6个数字或者6个字母,但是总长度不能超过16个字符 25 //rule := `regex:\d{6,}|\D{6,}|max-length:16` 26 //if m := gvalid.Check(context.TODO(), "123456", rule, nil); m != nil { 27 // fmt.Println(m) 28 //} 29 //if m := gvalid.Check(context.TODO(), "abcde6", rule, nil); m != nil { 30 // fmt.Println(m) 31 // // map[regex:字段值不合法] 32 //} 33 34 //params := map[string]string { 35 // "passport" : "john", 36 // "password" : "123456", 37 // "password2" : "1234567", 38 //} 39 //rules := map[string]string { 40 // "passport" : "required|length:6,16", 41 // "password" : "required|length:6,16|same:password2", 42 // "password2" : "required|length:6,16", 43 //} 44 //fmt.Println(gvalid.CheckMap(context.TODO(), params, rules)) 45 //// map[passport:map[length:字段长度为6到16个字符] password:map[same:字段值不合法]] 46 47 params := map[string]interface{}{ 48 "passport": "john", 49 "password": "123456", 50 "password2": "1234567", 51 "name": "gf", 52 } 53 rules := map[string]string{ 54 "passport": "required|length:6,16", 55 "password": "required|length:6,16|same:password2", 56 "password2": "required|length:6,16", 57 "name": "size:5", 58 } 59 msgs := map[string]interface{}{ 60 "passport": "账号不能为空|账号长度应当在:min到:max之间", 61 "password": map[string]string{ 62 "required": "密码不能为空", 63 "same": "两次密码输入不相等", 64 }, 65 "name": "名字长度必须为:size", 66 } 67 if e := gvalid.CheckMap(context.TODO(), params, rules, msgs); e != nil { 68 g.Dump(e.Maps()) 69 } 70 // map[passport:map[length:账号长度应当在6到16之间] password:map[same:两次密码输入不相等]] 71 }