当前位置: 首页 > news >正文

国内顶尖网站设计公司上海网络推广外包

国内顶尖网站设计公司,上海网络推广外包,手机网站改版公司,网站流量下降简介 应用提倡将配置存储在环境变量中。任何从开发环境切换到生产环境时需要修改的东西都从代码抽取到环境变量里。 但是在实际开发中,如果同一台机器运行多个项目,设置环境变量容易冲突,不实用。godotenv库从.env文件中读取配置,…

简介
应用提倡将配置存储在环境变量中。任何从开发环境切换到生产环境时需要修改的东西都从代码抽取到环境变量里。 但是在实际开发中,如果同一台机器运行多个项目,设置环境变量容易冲突,不实用。godotenv库从.env文件中读取配置, 然后存储到程序的环境变量中。在代码中可以使用读取非常方便。godotenv源于一个 Ruby 的开源项目dotenv。

github地址:https://github.com/joho/godotenv

这是一个比较简单的开源项目,目前拜读了,关于加载配置文件,但是parse.go 文件写的比较复杂, 自己手痒仿制一个

func readFile(cfgPathCol ...string) (cfgMap map[string]string) {cfgMap = make(map[string]string, 0)for _, cfgPath := range cfgPathCol {buf, err := os.ReadFile(cfgPath)if err != nil {log.Error("读取数据失败:", err)continue}rowByteBuf := []byte("\n")buf = append(bytes.ReplaceAll(buf, []byte("\r\n"), rowByteBuf), rowByteBuf...)for {rowEndIndex := bytes.IndexFunc(buf, func(r rune) bool {return r == '\n'})if rowEndIndex < 0 {break}rowByte := buf[0:rowEndIndex]k, v := FormateKeyValuePair(rowByte)if len(k) != 0 {cfgMap[k] = v}buf = buf[rowEndIndex+1:]}}return
}func FormateKeyValuePair(rowBuf []byte) (key string, value string) {key = ""value = ""if rowBuf == nil || len(rowBuf) == 0 {return}rowStr := string(rowBuf)rowCfgArr := SplitByChars(rowStr, '=', ':')if rowCfgArr == nil || len(rowCfgArr) <= 1 {return}key = strings.TrimFunc(rowCfgArr[0], func(r rune) bool {return unicode.IsSpace(r)})value = strings.TrimFunc(rowCfgArr[1], func(r rune) bool {return unicode.IsSpace(r)})return
}// SplitByChars splits the string s by any of the characters in the separator slice.
func SplitByChars(s string, separators ...rune) []string {var result []stringif separators == nil || len(separators) == 0 {result = append(result, s)return result}start := 0for i, r := range s {// 检查当前字符是否是分隔符之一isSeparator := falsefor _, sep := range separators {if r == sep {isSeparator = truebreak}}if isSeparator {// 如果是分隔符,添加从开始到当前位置(不包括分隔符)的子字符串到结果切片if start < i {result = append(result, s[start:i])}// 更新起始位置为当前位置+1(即跳过分隔符)start = i + 1}}// 添加最后一个部分(如果存在)if start < len(s) {result = append(result, s[start:])}return result
}
http://www.ritt.cn/news/13577.html

相关文章:

  • 制作网站 公司企业网络推广网站
  • 汕头市建设局造价信息网站十大电商代运营公司
  • 心理教育网站建设目的友情链接的检查方法
  • 2023年企业年报入口seo优质友链购买
  • 广东设计公司排名前十强seo搜索推广费用多少
  • 方案 网站建设长沙百度网站快速排名
  • 网站建设规划文案网址推广
  • 深圳专业网站建设多少钱可以发布推广引流的悬赏平台
  • 找钢网网站建设企业营销策略
  • 上海网络平台网站建设如何做一个自己的网站呢
  • 帝国手机网站怎么做一个免费的网站
  • 北京建王环境发展有限公司网站免费优化软件
  • 个人网站命名技巧百度网页版登录首页
  • 最好记得网站域名云优客seo排名公司
  • 网页制作与设计考试杭州网站优化平台
  • 哈尔滨网络推广专员湖南网络优化服务
  • 什么软件做高级网站足球联赛排名
  • 如何进入网站管理员界面免费建立个人网站凡科
  • 聊城冠县网站建设自动引流推广app
  • 西安排名seo公司seo网站优化工具
  • 北京做公司网站公司免费sem工具
  • 滁州市建设局网站策划方案模板
  • 手机web服务器关键词排名优化公司成都
  • 网站推广和seo软文广告平台
  • 欧美网站建设排名大全钓鱼网站制作教程
  • 苹果官方网站设计风格百度seo入驻
  • 做啤酒纸箱包装的网站百度提问首页
  • 公司做网站的费用的会计分录谷歌广告推广怎么做
  • 网站公司成本郑州靠谱seo电话
  • 网站设计的步骤武汉seo推广优化