golang模板template自定義函數(shù)用法示例
更新時(shí)間:2016年07月22日 14:56:46 作者:dotcoo
這篇文章主要介紹了golang模板template自定義函數(shù)用法,結(jié)合實(shí)例形式分析了Go語言模板自定義函數(shù)的基本定義與使用方法,需要的朋友可以參考下
本文實(shí)例講述了golang模板template自定義函數(shù)用法。分享給大家供大家參考,具體如下:
golang的模板十分強(qiáng)大,其中的unix管道風(fēng)格函數(shù)調(diào)用很是喜歡.
模板中有很多內(nèi)置可以參看pkg文檔,
另外還可以實(shí)現(xiàn)自定義函數(shù).
例子如下:
復(fù)制代碼 代碼如下:
package main
import (
"text/template"
"time"
"os"
)
type User struct {
Username, Password string
RegTime time.Time
}
func ShowTime(t time.Time, format string) string {
return t.Format(format)
}
func main() {
u := User{"dotcoo", "dotcoopwd", time.Now()}
t, err := template.New("text").Funcs(template.FuncMap{"showtime":ShowTime}).
Parse(`<p>{{.Username}}|{{.Password}}|{{.RegTime.Format "2006-01-02 15:04:05"}}</p>
<p>{{.Username}}|{{.Password}}|{{showtime .RegTime "2006-01-02 15:04:05"}}</p>
`)
if err != nil {
panic(err)
}
t.Execute(os.Stdout, u)
}
import (
"text/template"
"time"
"os"
)
type User struct {
Username, Password string
RegTime time.Time
}
func ShowTime(t time.Time, format string) string {
return t.Format(format)
}
func main() {
u := User{"dotcoo", "dotcoopwd", time.Now()}
t, err := template.New("text").Funcs(template.FuncMap{"showtime":ShowTime}).
Parse(`<p>{{.Username}}|{{.Password}}|{{.RegTime.Format "2006-01-02 15:04:05"}}</p>
<p>{{.Username}}|{{.Password}}|{{showtime .RegTime "2006-01-02 15:04:05"}}</p>
`)
if err != nil {
panic(err)
}
t.Execute(os.Stdout, u)
}
希望本文所述對大家Go語言程序設(shè)計(jì)有所幫助。
相關(guān)文章
Go結(jié)構(gòu)體SliceHeader及StringHeader作用詳解
這篇文章主要為大家介紹了Go結(jié)構(gòu)體SliceHeader及StringHeader作用的功能及面試官愛問的實(shí)際意義詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-07-07
go數(shù)據(jù)結(jié)構(gòu)和算法BitMap原理及實(shí)現(xiàn)示例
這篇文章主要為大家介紹了go數(shù)據(jù)結(jié)構(gòu)和算法BitMap原理及實(shí)現(xiàn)示例,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-07-07

