月初の取得は簡単 Dateで求めてあげればいいです
t1 := time.Now()
t2 := time.Date(t1.Year(), t1.Month(), 1, 0, 0, 0,0, time.UTC)
fmt.Println(t2)
// => 2019-10-01 00:00:00 +0000 UTC
月末は月初から-1日すれば求まります
t3 := t2.AddDate(0, 0, -1)
fmt.Println(t3)
// => 2019-09-30 00:00:00 +0000 UTC
コピペ実行用
package main
import (
"fmt"
"time"
)
//--------------------------------------------------------
// 月末月初の時刻を取得する
//--------------------------------------------------------
func main() {
// 月初の取得は簡単 Dateで求めてあげればいいです
t1 := time.Now()
t2 := time.Date(t1.Year(), t1.Month(), 1, 0, 0, 0,0, time.UTC)
fmt.Println(t2)
// => 2019-10-01 00:00:00 +0000 UTC
// 月末は月初から-1日すれば求まります
t3 := t2.AddDate(0, 0, -1)
fmt.Println(t3)
// => 2019-09-30 00:00:00 +0000 UTC
}