Kom ihåg mig?

Visa XML struktur

 
Ämnesverktyg Visningsalternativ
Oläst 2010-08-31, 11:41 #1
mojitoo mojitoo är inte uppkopplad
Medlem
 
Reg.datum: Jun 2010
Inlägg: 125
mojitoo mojitoo är inte uppkopplad
Medlem
 
Reg.datum: Jun 2010
Inlägg: 125
Standard Visa XML struktur

Hej!

Jag undrar om ni kan hjälpa mig att visa xml strukturen på något sätt.

För att ni ska förstå mig bättre ska jag ge er ett exempel.

http://www.tizag.com/xmlTutorial/xmltree.php
Denna sida visar en väldigt enkel struktur av ett xml dokument.
Kod:
<inventory>
	<drink>
		<lemonade>
			<price>$2.50</price>
			<amount>20</amount>
		</lemonade>
		<pop>
			<price>$1.50</price>
			<amount>10</amount>
		</pop>
	</drink>

	<snack>
		<chips>
			<price>$4.50</price>
			<amount>60</amount>
		</chips>
	</snack>
	<snack>
		<chips>
			<price>$4.50</price>
			<amount>60</amount>
		</chips>
	</snack>
</inventory>
Det som jag behöver hjälp med att åstadkomma är att visa följande

Kod:
<inventory>
	<drink>
		<lemonade>
			<price></price>
			<amount></amount>
		</lemonade>
		<pop>
			<price></price>
			<amount></amount>
		</pop>
	</drink>

	<snack>
		<chips>
			<price></price>
			<amount></amount>
		</chips>
	</snack>
</inventory>
Jag vill alltså skriva ut xml strukturen på ett xml dokument och undvika dubbletter som ni ser. Går detta att åstadkomma på något sätt?

Jag använder mig av PHP och har med hjälp av simple xml och funktionen getName() (http://www.w3schools.com/php/php_ref_simplexml.asp) lyckats skriva ut allt på en lång lista. Men den tar inte hänsyn till dubbletter och inte heller hur långt in i dokumentet de ligger:

PHP-kod:
function recurse_xml_tree($node) { 
    if (!
$node || sizeof($node->children()) < 1
        return array(); 

    
$result = array(); 
    foreach (
$node->children() as $current) { 
        
array_push($result$current->getName()); 
        
$result array_merge
                        
$result
                        
recurse_xml_tree($current
            ); 
    } 

    return 
$result


$xml  simplexml_load_file('http://www.tizag.com/files/xml/lemonade.xml'); 
$list recurse_xml_tree($xml); 
ger mig följande:

Kod:
drink
lemonade
price
amount
pop
price
amount
snack
chips
price
amount
snack
chips
price
amount
Vilket tyvärr inte alls åstadkommer vad jag vill och hoppas därför på att någon av er kan hjälpa mig att skriva ut strukturen på xml dokumentet på något sätt. Den ska även skriva ut attributen exempelvis <chips name="pringles"></chips>
Såg att man kunde få ut attributen via attribute i simpleXML men tog inte med det i mitt exempel eftersom att jag ville att ni skulle förstå vad jag menade.

Är det möjligt att åstadkomma det jag vill åstadkomma?

Tack på förhand!
mojitoo är inte uppkopplad   Svara med citatSvara med citat
 


Aktiva användare som för närvarande tittar på det här ämnet: 1 (0 medlemmar och 1 gäster)
 
Ämnesverktyg
Visningsalternativ

Regler för att posta
Du får inte posta nya ämnen
Du får inte posta svar
Du får inte posta bifogade filer
Du får inte redigera dina inlägg

BB-kod är
Smilies är
[IMG]-kod är
HTML-kod är av

Forumhopp


Alla tider är GMT +2. Klockan är nu 15:05.

Programvara från: vBulletin® Version 3.8.2
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Svensk översättning av: Anders Pettersson
 
Copyright © 2017