Maison > développement back-end > tutoriel php > Comment accéder aux nœuds XML avec trait d'union à l'aide de SimpleXML ?

Comment accéder aux nœuds XML avec trait d'union à l'aide de SimpleXML ?

Barbara Streisand
Libérer: 2024-12-29 07:33:11
original
802 Les gens l'ont consulté

How to Access Hyphenated XML Nodes Using SimpleXML?

Lecture de nœuds XML avec des noms avec trait d'union à l'aide de SimpleXML

La lecture de nœuds XML avec des noms avec trait d'union à l'aide de SimpleXML peut être délicate. La bibliothèque native SimpleXML s'attend à ce que les nœuds soient spécifiquement préfixés par deux points pour les espaces de noms (et convertis en lettres majuscules) et traités comme un enfant de l'élément racine XML actuellement chargé.

Par exemple, pour accéder au document-meta nœud dans le XML fourni :

<?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>
Copier après la connexion

Au lieu d'utiliser $xml->children($namespacesMeta['office']), utilisez :

$officeXML = $xml->children($namespacesMeta['office'])->{’document-meta’};
Copier après la connexion

Cela accédera au nœud document-meta et à ses enfants en conséquence.

Notez que ceci uniquement s'applique à l'accès aux éléments XML avec trait d'union. Pour les nœuds d'attribut, ils sont normalement accessibles en utilisant la notation de tableau @attributes.

Pour plus de clarté sur l'accès aux éléments avec des noms spéciaux en XML à l'aide de SimpleXML, reportez-vous à la documentation à l'adresse :

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

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal