我有一个PHP
脚本,我在其中创建了一些数组格式(数据结构),我希望使用Golang
转换相同的数组结构。
以下是我的PHP脚本的数组结构
$response['spf']['current_value'] = $spfValue; // this will be the array of strings
$response['spf']['required_value'] = "v=spf1 a include:32782.pppp.com ~all";
$response['spf']['is_verified'] = $isValidSpf; //this will be int
$response['spf']['spf_matched'] = $isMatched; //this will be int
print_r($response);
以上脚本的输出将是名为SPF的键的Array
[spf] => Array
(
[current_value] => Array
(
[0] => v=spf1 a -all,
)
[required_value] => v=spf1 a include:32782.pppp.com ~all
[is_verified] => 0
[spf_matched] => 0
)
由于我是golang
的新用户,需要一些golang代码,它会返回与PHP
脚本相同的输出
答案 0 :(得分:-1)
希望下面的代码可以帮到你。根据您的JSON创建结构。
package main
import (
"encoding/json"
"fmt"
)
type Resp struct {
Spf Param `json:"spf"`
}
type Param struct {
Is_verified int `json:"is_verified"`
Spf_matched int `json:"spf_matched"`
Required_value string `json:"required_value"`
Current_value map[int]string `json:"current_value"`
}
func main() {
str := make(map[int]string)
str[0] = "v=spf1 a -all,"
resp := Resp{Spf: Param{Is_verified: 0, Spf_matched: 0, Required_value: "v=spf1 a include:32782.pppp.com ~all", Current_value: str}}
js, _ := json.Marshal(resp)
fmt.Printf("%s", js)
}