全局对象

GF框架封装了一些常用的数据类型以及对象,通过g.*方法获取。

g是一个强耦合的模块,目的是为开发者在对频繁使用的类型/对象调用时提供便利。

使用方式

  1. import "github.com/gogf/gf/frame/g"

数据类型

常用数据类型别名。

  1. // 泛型
  2. type Var = gvar.Var
  3. // 常用Map类型
  4. type Map = map[string]interface{}
  5. type MapAnyAny = map[interface{}]interface{}
  6. type MapAnyStr = map[interface{}]string
  7. type MapAnyInt = map[interface{}]int
  8. type MapStrAny = map[string]interface{}
  9. type MapStrStr = map[string]string
  10. type MapStrInt = map[string]int
  11. type MapIntAny = map[int]interface{}
  12. type MapIntStr = map[int]string
  13. type MapIntInt = map[int]int
  14. // 常用Slice Map类型
  15. type List = []Map
  16. type ListAnyStr = []map[interface{}]string
  17. type ListAnyInt = []map[interface{}]int
  18. type ListStrAny = []map[string]interface{}
  19. type ListStrStr = []map[string]string
  20. type ListStrInt = []map[string]int
  21. type ListIntAny = []map[int]interface{}
  22. type ListIntStr = []map[int]string
  23. type ListIntInt = []map[int]int
  24. // 常用Slice类型
  25. type Slice = []interface{}
  26. type SliceAny = []interface{}
  27. type SliceStr = []string
  28. type SliceInt = []int
  29. // 常用Slice类型(别名)
  30. type Array = []interface{}
  31. type ArrayAny = []interface{}
  32. type ArrayStr = []string
  33. type ArrayInt = []int

常用对象

常用对象通过单例模式进行管理,可以根据不同的单例名称获取对应的对象实例。并在对象初始化时会自动检索获取配置文件中的对应配置项,具体配置项请查看对应对象的章节介绍。

(单例) 配置管理对象

  1. func Config(name...string) *gcfg.Config

别名:

  1. func Cfg(name ...string) *gcfg.Config

(单例) 日志管理对象

  1. func Log(name ...string) *glog.Logger

(单例) 模板引擎对象

  1. func View(name ...string) *gview.View

(单例) WEB Server

  1. func Server(name ...interface{}) *ghttp.Server

(单例) TCP Server

  1. func TcpServer(name ...interface{}) *gtcp.Server

(单例) UDP Server

  1. func UdpServer(name ...interface{}) *gudp.Server

(单例) 数据库ORM对象

  1. func DB(name ...string) *gdb.Db

(单例) Redis客户端对象

  1. func Redis(name ...string) *gredis.Redis

(单例) 资源管理对象

  1. func Resource(name ...string) *gres.Resource

别名:

  1. func Res(name ...string) *gres.Resource

(单例) 国际化管理对象

  1. func I18n(name ...string) *gi18n.Manager