Bereiche
News
Rewind
Tipps & Berichte
Forum
Galerie
Journals
Events
Umfragen
Themenwoche
Kleinanzeigen
Interaktiv
Anmelden
Registrierung
Zu allen empfangenen Nachrichten
Suche...
Zur erweiterten Suche
Push-Nachrichten von MacTechNews.de
Würden Sie gerne aktuelle Nachrichten aus der Apple-Welt direkt über Push-Nachrichten erhalten?
Forum
>
Entwickler
>
Mit PHP Parameter im XML Namespace parsen
Mit PHP Parameter im XML Namespace parsen
pismo
14.05.11
10:45
Puh - was für ein Titel, auf jeden Fall macht es wohl das folgende Beispiel deutlicher:
Ich habe eine XML-Datei mit den folgenden Infos:
<name>Peter</name>
<category name="Employee" label="Mitarbeiter"/>
<xy:gender>Male</xy:gender>
<xy:website href="http://www.xyz.com/peter">Peter's Homepage</xy:website>
Ich parse in den ersten drei Fällen:
001 $data01 = $xml->item;
002 $name = $data01[0]->name;
003 $category_name = $data01[0]->category['name'];
004 $gender = $data01[0]->children(xy, true)->gender;
Doch wie kann ich nun den Link aus der xy:website auslesen, denn wenn ich wie bei 004 parse, gibt er mir nur "Peter's Homepage" aus, nicht aber den Link.
Das Folgende habe ich versucht, leider erfolglos:
001 $weblink = $data01[0]->children(xy, true)->website['href'];
Wäre echt nett wenn sich hier jemand meiner annehmen würde!
Hilfreich?
0
Kommentare
pismo
14.05.11
18:12
sorry, shameless self-bump
Kann wirklich niemand helfen?
Hilfreich?
0
micheee
15.05.11
19:56
Hi pismo,
Ich nehme an du verwendest php's simplexml.
Hast du denn den Namespace xy irgendwo definiert?
Falls ja kannst du auf die Elemente zugreifen wie hier beschrieben
Falls nicht, ist die Lösung nicht mehr ganz so simpel, aber hier skizziert
Von der Idee her ist es folgendes:
* Du registrierst den Namespace beim Parser (Zeile 13)
* Du führst eine XPath Anfrage auf den /emp/website/ Pfad aus und speicherst das Ergebnis in $web (Zeile 14)
* Da der Namespace jetzt registriert ist, werden auch die Attribute mit Namespace in die Objektstruktur geparst
Um das Beispiel lauffähig zu machen hab ich dein Fragment in ein <emp /> Element verpackt
Hoffe das hilft.
Grüße
Hilfreich?
0
pismo
16.05.11
00:24
micheee
Hoffe das hilft.
Hi micheee,
ich danke dir für deine Hilfe und dass du dir die Mühe gemacht hast alles auch noch in github zu schreiben! Ich habe kurz drüber geschaut und einen ersten Test gemacht, funktioniert tadellos. Ich werde morgen weiter machen un berichten. Aber echt ganz große Klasse, danke!
Informatikstudent?
Gruss, pismo
Hilfreich?
0
micheee
16.05.11
12:38
Hi pismo, ja aber ziemlich am Ende des Studiums, die Master Arbeit muss noch geschrieben werden
Momentan entwickle ich an basex.org - einer XML Datenbank mit, deswegen hab ich die XML Frage auch gerne beantwortet
(Damit kannst du XPath oder XQuery Anfragen auch auf XML Instanzen mit mehreren GB Größe recht performant beantworten)
Grüße
Michi
Hilfreich?
0
Kommentieren
Diese Diskussion ist bereits mehr als 3 Monate alt und kann daher nicht mehr kommentiert werden.
Interview: Größte private Mac-Sammlung
Übersicht: Lieferzeiten für die neuen Macs
Apple kündigt Systemupdates für heute Abend an ...
20 Jahre Mac mini
Test Marantz Model 60n
PIN-Code erraten: Dauer
Kurz: Apple bietet iPhone 15 erstmals refurbish...
M4 zu M5: Erste Vorbereitungen