Go語(yǔ)言轉(zhuǎn)化php數(shù)組的示例代碼
更新時(shí)間:2023年11月01日 10:52:19 作者:lxw1844912514
這篇文章主要為大家詳細(xì)介紹了Go語(yǔ)言如何實(shí)現(xiàn)轉(zhuǎn)化php數(shù)組的相關(guān)知識(shí),文中的示例代碼講解詳細(xì),對(duì)我們深入學(xué)習(xí)GO語(yǔ)言有一定的幫助,需要的可以參考下
php程序
$str = <<<EOF {"操作源":"任意","數(shù)據(jù)庫(kù)":"任意","語(yǔ)句類型":"CREATE DATABASE;DROP DATABASE;ALTER DATABASE","影響行數(shù)":"不涉及","告警閾值":"執(zhí)行1次"} EOF; $data = [ 'title' => '標(biāo)題', 'list' => $str ]; $const = ['operate_account' => '操作源', 'db_name' => '數(shù)據(jù)庫(kù)', 'sql_type' => '語(yǔ)句類型', 'rows' => '影響行數(shù)', 'alarm_line' => '告警閾值']; $data['list'] = json_decode($data['list'], 320); $newArr2['title']=$data['title']; foreach ($data['list'] as $key => $v) { $newArr2['content'][array_search($key,$const)]= $v; } dd($data); dd($newArr2); function dd($param) { echo "<pre>"; print_r($param); echo "<pre>"; }
轉(zhuǎn)化go語(yǔ)言
package main import ( "encoding/json" "github.com/gin-gonic/gin" ) type Data struct { Title string `json:"title"` Content map[string]string `json:"content"` } func main() { r := gin.Default() // 多行JSON字符串 jsonStr := `{ "操作源": "任意", "數(shù)據(jù)庫(kù)": "任意", "語(yǔ)句類型": "CREATE DATABASE;DROP DATABASE;ALTER DATABASE", "影響行數(shù)": "不涉及", "告警閾值": "執(zhí)行1次" }` // 轉(zhuǎn)化為Go結(jié)構(gòu)體 var data map[string]interface{} if err := json.Unmarshal([]byte(jsonStr), &data); err != nil { panic("無(wú)法解析JSON數(shù)據(jù)") } // 定義常量映射 constMap := map[string]string{ "操作源": "operate_account", "數(shù)據(jù)庫(kù)": "db_name", "語(yǔ)句類型": "sql_type", "影響行數(shù)": "rows", "告警閾值": "alarm_line", } // 創(chuàng)建新的數(shù)據(jù)結(jié)構(gòu) var newArr2 Data newArr2.Title = "標(biāo)題" // 創(chuàng)建內(nèi)容的映射 newArr2.Content = make(map[string]string) // 遍歷data中的數(shù)據(jù) for key, value := range data { // 查找映射關(guān)系 mappedKey, exists := constMap[key] //fmt.Println(key, value, exists, constMap["數(shù)據(jù)庫(kù)"], mappedKey) //os.Exit(2232) if exists { newArr2.Content[mappedKey] = value.(string) } } r.GET("/data", func(c *gin.Context) { c.JSON(200, newArr2) }) r.Run(":8081") }
轉(zhuǎn)化結(jié)果:
到此這篇關(guān)于Go語(yǔ)言轉(zhuǎn)化php數(shù)組的示例代碼的文章就介紹到這了,更多相關(guān)go轉(zhuǎn)化php數(shù)組內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Golang實(shí)現(xiàn)心跳機(jī)制的示例詳解
這篇文章主要為大家詳細(xì)介紹了Golang實(shí)現(xiàn)心跳機(jī)制的相關(guān)知識(shí),文中的示例代碼講解詳細(xì),具有一定的借鑒價(jià)值,有需要的小伙伴可以參考一下2024-04-04go語(yǔ)言中fallthrough的用法說(shuō)明
這篇文章主要介紹了go語(yǔ)言中fallthrough的用法說(shuō)明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2021-05-05使用Go語(yǔ)言實(shí)現(xiàn)跨域資源共享(CORS)設(shè)置
在Web開(kāi)發(fā)中,跨域資源共享(CORS)是一種重要的安全機(jī)制,它允許許多資源在一個(gè)網(wǎng)頁(yè)上被另一個(gè)來(lái)源的網(wǎng)頁(yè)所訪問(wèn),然而,出于安全考慮,瀏覽器默認(rèn)禁止這種跨域訪問(wèn),為了解決這個(gè)問(wèn)題,我們可以使用Go語(yǔ)言來(lái)設(shè)置CORS,需要的朋友可以參考下2024-06-06