Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Mengakses Nod XML Bersempang Menggunakan SimpleXML?

Bagaimana untuk Mengakses Nod XML Bersempang Menggunakan SimpleXML?

Barbara Streisand
Barbara Streisandasal
2024-12-29 07:33:11829semak imbas

How to Access Hyphenated XML Nodes Using SimpleXML?

Membaca Nod XML dengan Nama Bersempang Menggunakan SimpleXML

Membaca nod XML dengan nama bersempang menggunakan SimpleXML boleh menjadi rumit. Pustaka SimpleXML asli menjangkakan nod akan diberi awalan khusus dengan titik bertindih untuk ruang nama (dan ditukar kepada semua huruf besar) dan dianggap sebagai kanak-kanak kepada elemen akar XML yang dimuatkan pada masa ini.

Sebagai contoh, untuk mengakses document-meta nod dalam XML yang disediakan:

<?xml version="1.0" encoding="UTF-8"?>
<gnm:Workbook xmlns:gnm="http://www.gnumeric.org/v10.dtd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.gnumeric.org/v9.xsd">
<office:document-meta xmlns:office="urn:oasis:names:tc:opendocument:xmlns:office:1.0" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:meta="urn:oasis:names:tc:opendocument:xmlns:meta:1.0" office:version="1.1">
<dc:creator>Mark Baker</dc:creator>
<dc:date>2010-09-01T22:49:33Z</dc:date>
<meta:creation-date>2010-09-01T22:48:39Z</meta:creation-date>
<meta:editing-cycles>4</meta:editing-cycles>
<meta:editing-duration>PT00H04M20S</meta:editing-duration>
<meta:generator>OpenOffice.org/3.1$Win32 OpenOffice.org_project/310m11$Build-9399</meta:generator>
</office:meta>
</office:document-meta>
</gnm:Workbook>

Daripada menggunakan $xml->children($namespacesMeta['office']), gunakan:

$officeXML = $xml->children($namespacesMeta['office'])->{’document-meta’};

Ini akan mengakses nod document-meta dan anak-anaknya dengan sewajarnya.

Perhatikan bahawa ini hanya terpakai untuk mengakses elemen XML bersempang. Untuk nod atribut, ia boleh diakses secara biasa menggunakan tatatanda tatasusunan @attributes.

Untuk kejelasan tambahan tentang mengakses elemen dengan nama khas dalam XML menggunakan SimpleXML, rujuk dokumentasi di:

[SimpleXML Asas](https://www.php.net/manual/en/simplexml.intro-example.php)

Atas ialah kandungan terperinci Bagaimana untuk Mengakses Nod XML Bersempang Menggunakan SimpleXML?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn