首先來講講如何引入第三方包,學了golang就要習慣引入第三方包來搞事情,php裡面不也經常通過composer引入第三方外掛包嘛?其實一樣的道理,只不過引入的形式不同而已!
比如我們這裡需要引入將結構體屬性轉換為json字串的包,當然去github上邊去找了,github上邊什麼都有,首先你得有git,沒有git不會git那就是扯淡!
還記得gopath嗎?
開啟git命令列 隨便在哪個位置 當然你已經配置了go的環境變數的前提下哈 以及 gopath的環境變數也配置好了
然後執行:go get github.com/pquerna/ffjson
執行完畢 你會發現在你的gopath目錄下的src裡面多了一個包 github包
引入完成第三方包那麼我們的智慧編輯器goland就會自動幫你載入的,儘管使用就行啦!
package main
import (
"fmt"
"github.com/pquerna/ffjson/ffjson")
func main(){
//第三方包的使用 json化結構體 if else的初次使用 案例一
//初始化結構體
news:=TestStrutOne{112233,"biaoti"}
//news.Tojson() 你就把ToJson()理解我TestStrutOne結構體裡面的方法就行
fmt.Println(news.ToJson())
}
//配合 第三方包的使用/json化結構體/if else的初次使用 案例一
type TestStrutOne struct {
NewsId int
NewsTitle string
}
//配合 第三方包的使用/json化結構體/if else的初次使用 案例一
//理解為其實就是 TestStrutOne結構體裡面的方法
//返回值為string型別
func (news TestStrutOne) ToJson() string {
//這種寫法在php當中叫做解構 ffjson.Marshal()是引用了第三方的json轉換包 如何引入我們去部落格裡面講
result,err := ffjson.Marshal(news)
//nil就是相當於php當中的null none 空
if err !=nil {
return err.Error()
} else {
//因為返回值為string型別 所以這裡需要使用string()強轉一下啦
return string(result)
}
}
直接上程式碼吧 註釋都在程式碼裡面寫著呢
本作品採用《CC 協議》,轉載必須註明作者和本文連結