將 XML 字串解碼為結構體
php小編小新將為大家介紹如何將XML字串解碼為結構體。 XML是一種用於儲存和傳輸資料的標記語言,而結構體是一種用於組織和儲存資料的資料類型。透過將XML字串解碼為結構體,我們可以方便地對其中的資料進行操作和處理。在本文中,我們將探索使用PHP語言解析XML字串並將其轉換為結構體的方法,幫助您更好地理解和應用XML資料。
問題內容
我有以下 xml:
<doc> <subgroup1> <value1>abc123</value1> <value2>abc123</value2> <value3>abc123</value3> <value4>abc123</value4> </subgroup1> <subgroup2> <thetag mytagattr="abc123"> <value1>abc123</value1> <value2>abc123</value2> <value3>abc123</value3> <value4 mytagattr="abc123">abc123</value4> <value5>abc123</value5> <value6>abc123</value6> <value7>abc123</value7> <value8>abc123</value8> <value9>abc123</value9> </thetag> </subgroup2> </doc>
我需要解碼成這個結構:
type thetag struct { xmlname xml.name `xml:"subgroup2>thetag"` value1 string `xml:"value1"` value2 string `xml:"value2"` }
但是我無法將此子元素正確解碼到結構中。
我收到以下錯誤:
error decoding message content: %!w(xml.UnmarshalError=expected element type <SubGroup2>TheTag> but have <DOC>)
我的程式碼可以在 go playgroud 上找到:https://go.dev/play/p/o688qtbarjm
提前致謝!
解決方法
您可能應該移動標籤。
type TheTag struct { XMLName xml.Name `xml:"DOC"` Value1 string `xml:"SubGroup2>TheTag>Value1"` Value2 string `xml:"SubGroup2>TheTag>Value2"` }
以上是將 XML 字串解碼為結構體的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

OpenSSL,作為廣泛應用於安全通信的開源庫,提供了加密算法、密鑰和證書管理等功能。然而,其歷史版本中存在一些已知安全漏洞,其中一些危害極大。本文將重點介紹Debian系統中OpenSSL的常見漏洞及應對措施。 DebianOpenSSL已知漏洞:OpenSSL曾出現過多個嚴重漏洞,例如:心臟出血漏洞(CVE-2014-0160):該漏洞影響OpenSSL1.0.1至1.0.1f以及1.0.2至1.0.2beta版本。攻擊者可利用此漏洞未經授權讀取服務器上的敏感信息,包括加密密鑰等。

後端學習路徑:從前端轉型到後端的探索之旅作為一名從前端開發轉型的後端初學者,你已經有了nodejs的基礎,...

在BeegoORM框架下,如何指定模型關聯的數據庫?許多Beego項目需要同時操作多個數據庫。當使用Beego...

Go語言中用於浮點數運算的庫介紹在Go語言(也稱為Golang)中,進行浮點數的加減乘除運算時,如何確保精度是�...

Go爬蟲Colly中的Queue線程問題探討在使用Go語言的Colly爬蟲庫時,開發者常常會遇到關於線程和請求隊列的問題。 �...

GoLand中自定義結構體標籤不顯示怎麼辦?在使用GoLand進行Go語言開發時,很多開發者會遇到自定義結構體標籤在�...

Go語言中字符串打印的區別:使用Println與string()函數的效果差異在Go...

Go語言中使用RedisStream實現消息隊列時類型轉換問題在使用Go語言與Redis...
