Editor PHP Xiaoxin akan memperkenalkan kepada anda cara untuk menyahkod rentetan XML kepada struktur. XML ialah bahasa penanda yang digunakan untuk menyimpan dan menghantar data, manakala struktur ialah jenis data yang digunakan untuk menyusun dan menyimpan data. Dengan menyahkod rentetan XML ke dalam struktur, kami boleh mengendalikan dan memproses data di dalamnya dengan mudah. Dalam artikel ini, kami akan meneroka kaedah menggunakan bahasa PHP untuk menghuraikan rentetan XML dan menukarnya kepada struktur untuk membantu anda memahami dan menggunakan data XML dengan lebih baik.
Saya mempunyai xml berikut:
<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>
Saya perlu menyahkod ke dalam struktur ini:
type thetag struct { xmlname xml.name `xml:"subgroup2>thetag"` value1 string `xml:"value1"` value2 string `xml:"value2"` }
Tetapi saya tidak dapat menyahkod elemen kanak-kanak ini ke dalam struktur dengan betul.
Saya mendapat ralat berikut:
error decoding message content: %!w(xml.UnmarshalError=expected element type <SubGroup2>TheTag> but have <DOC>)
Kod saya boleh didapati di go playgroud: https://go.dev/play/p/o688qtbarjm
Terima kasih terlebih dahulu!
Anda mungkin perlu mengalihkan label.
type TheTag struct { XMLName xml.Name `xml:"DOC"` Value1 string `xml:"SubGroup2>TheTag>Value1"` Value2 string `xml:"SubGroup2>TheTag>Value2"` }
Atas ialah kandungan terperinci Nyahkod rentetan XML ke dalam struktur. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!