php-resource



Zurück   PHP-Scripte PHP-Tutorials PHP-Jobs und vieles mehr > Entwicklung > PHP Developer Forum
 

Login

 
eingeloggt bleiben
star Jetzt registrieren   star Passwort vergessen
 

 

 


PHP Developer Forum Hier habt ihr die Möglichkeit, eure Skriptprobleme mit anderen Anwendern zu diskutieren. Seid so fair und beantwortet auch Fragen von anderen Anwendern. Dieses Forum ist sowohl für ANFÄNGER als auch für PHP-Profis! Fragen zu Laravel, YII oder anderen PHP-Frameworks.

Antwort
 
LinkBack Themen-Optionen Thema bewerten
  #1 (permalink)  
Alt 22-10-2009, 13:08
Gunah
 Registrierter Benutzer
Links : Onlinestatus : Gunah ist offline
Registriert seit: Oct 2009
Beiträge: 87
Gunah befindet sich auf einem aufstrebenden Ast
Standard Array in eine XML Dateibringen...

Moin,

ich habe gerade folgendes Problem, dieses wäre ,

Versuchen einen array, der mehrere ebenen hat in eine XML Datei zu packen...
habe mir einpaar Scripte aus dem Netz angeguckt, die bearbeiten, aber per foreach nur eine ebene... ich muss es aber rekursiv haben.
sprich falls vorhanden auch noch die anderen ebenen ;-)...

Um es noch schwerer zumachen, es muss auf PHP4 (min. 4.4) laufen, und auf PHP5 (und größer)

Gruß
Gunah
Mit Zitat antworten
  #2 (permalink)  
Alt 22-10-2009, 13:14
pekka
 PHP Master
Links : Onlinestatus : pekka ist offline
Registriert seit: Jun 2001
Ort: Köln
Beiträge: 6.608
pekka befindet sich auf einem aufstrebenden Ast
Standard

Google ist dein Freund.
z.B. PHP Array to XML - Google-Suche
Mit Zitat antworten
  #3 (permalink)  
Alt 22-10-2009, 13:16
Gunah
 Registrierter Benutzer
Links : Onlinestatus : Gunah ist offline
Registriert seit: Oct 2009
Beiträge: 87
Gunah befindet sich auf einem aufstrebenden Ast
Standard

thx xD...

habe mehrere Varianten bei Google eingeben aber diese eben nicht :-/

ich sollte jetzt lieber wieder ins Bett gehen :-/
....

EDIT:// 1
habe einfach mal mein Hirn aus dem Standby geholt und nach gedacht, hier mein erster Entwurf... der sollte noch überarbeitet werden, falls der key mal Sonderzeichen usw. enthält ;-)

für alle Suchenenden

PHP-Code:
$array = array(
        
'wert' => 1,
        
'array' => array(
            
1,2,3,4,5,5,6,7,
        ),
);

echo 
array2xml($array);

/* ;-) */
function array2xml ($array = array())
{
    
$all '';
    foreach(
$array as $key => $value)
    {
        
$all .= '<'.$key.'>';
        if( !
is_array($value) )
        {
            
$all .= $value;
        }
        else
        {
            
$all .= array2xml($value);
        }
        
$all .= '</'.$key.'>' "\n";
    }

    return 
$all;


Geändert von Gunah (22-10-2009 um 13:36 Uhr)
Mit Zitat antworten
  #4 (permalink)  
Alt 22-10-2009, 15:06
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Hallo,

das ist aber kein XML was da raus kommt. Das Element sollte besser item heißen und ein key-Attribut bekommen.

Gruß,

Amica
Mit Zitat antworten
  #5 (permalink)  
Alt 22-10-2009, 15:13
unset
  Moderator
Links : Onlinestatus : unset ist offline
Registriert seit: Jan 2007
Ort: Düsseldorf
Beiträge: 3.782
unset befindet sich auf einem aufstrebenden Ast
Standard

Naja, es ist schon XML was rauskommt … Wie man es aufbaut ist einem ja selbst überlassen. Ich würde aber zusätzlich prüfen, ob der Key überhaupt 1:1 zu einem Element umgewandelt werden kann …
Mit Zitat antworten
  #6 (permalink)  
Alt 22-10-2009, 15:14
Gunah
 Registrierter Benutzer
Links : Onlinestatus : Gunah ist offline
Registriert seit: Oct 2009
Beiträge: 87
Gunah befindet sich auf einem aufstrebenden Ast
Standard

wie geschrieben es ist nur ein Entwurf, man muss ja nicht immer gleich alles aufblättern ;-)...
Mit Zitat antworten
  #7 (permalink)  
Alt 22-10-2009, 15:24
unset
  Moderator
Links : Onlinestatus : unset ist offline
Registriert seit: Jan 2007
Ort: Düsseldorf
Beiträge: 3.782
unset befindet sich auf einem aufstrebenden Ast
Standard

Ich sehe auch grade, dass der eigentlich gar nicht laufen dürfte
Mit Zitat antworten
  #8 (permalink)  
Alt 22-10-2009, 15:24
AmicaNoctis
  Moderatorin
Links : Onlinestatus : AmicaNoctis ist offline
Registriert seit: Jul 2009
Beiträge: 5.709
Blog-Einträge: 9
AmicaNoctis sorgt für eine eindrucksvolle AtmosphäreAmicaNoctis sorgt für eine eindrucksvolle Atmosphäre
Standard

Ja, ok, aber den finde ich im Ansatz schon unzureichend. Damit mein Meckern aber noch etwas konstruktive Substanz bekommt, hier von mir noch eine Composite DTD, mit der du alles abbilden kannst, sogar Referenzen innerhalb von Arrays:

Code:
<!ELEMENT obj (obj|attr|ref)*>
<!ATTLIST obj
	name CDATA #REQUIRED
	type CDATA #REQUIRED
	guid CDATA #REQUIRED
>

<!ELEMENT attr (#PCDATA)>
<!ATTLIST attr
	name CDATA #REQUIRED
	type CDATA #REQUIRED
>

<!ELEMENT ref (#PCDATA)>
<!ATTLIST ref
	name CDATA #REQUIRED
>
Edit: so sähe dann das XML-Dokument für dein Beispiel aus:

HTML-Code:
<obj name="" type="array" guid="4ae04fff2625d">
	<attr name="wert" type="int">1</attr>
	<obj name="array" type="array" guid="4ae05033d59fb">
		<attr name="0" type="int">1</attr>
		<attr name="1" type="int">2</attr>
		<attr name="2" type="int">3</attr>
		<attr name="3" type="int">4</attr>
		<attr name="4" type="int">5</attr>
		<attr name="5" type="int">5</attr>
		<attr name="6" type="int">6</attr>
		<attr name="7" type="int">7</attr>
	</obj>
</obj>

Geändert von AmicaNoctis (22-10-2009 um 15:33 Uhr)
Mit Zitat antworten
Antwort

Lesezeichen


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
array in eine Variable übergeben? erikbln PHP Developer Forum 5 17-01-2008 01:42
Array übergabe an eine Funktion v0id HTML, JavaScript, AJAX, jQuery, CSS, Bootstrap, LESS 1 19-10-2006 13:30
eine variable in ein array schreiben mowupp PHP Developer Forum 1 30-08-2006 23:09
Array-Ausgabe in eine Var? minuta PHP Developer Forum 1 08-10-2004 22:23
2 array in eine datenbank Frashier PHP Developer Forum 6 20-07-2004 14:16

Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an


PHP News

Die RIGID-FLEX-Technologie
Die RIGID-FLEX-TechnologieDie sogenannte "Flexible Elektronik" , oftmals auch als "Flexible Schaltungen" bezeichnet, ist eine zeitgemäße Technologie zum Montieren von elektronischen Schaltungen.

06.12.2018 | Berni

ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlicht
ebiz-trader 7.5.0 mit PHP7 Unterstützung veröffentlichtDie bekannte Marktplatzsoftware ebiz-trader ist in der Version 7.5.0 veröffentlicht worden.

28.05.2018 | Berni


 

Aktuelle PHP Scripte

ModuleStudio ansehen ModuleStudio

Modellgetriebene Entwicklung von Erweiterungen für das Open Source Framework Zikula.

15.01.2019 Guite | Kategorie: PHP ENTWICKLUNGSUMGEBUNG
FAQ Script PHP ansehen FAQ Script PHP

FAQ Script PHP is a simple knowledgebase script and you could use it as a Frequently Asked Question section on your website. It is written in PHP and MySQL.

14.01.2019 nevenov | Kategorie: PHP/ FAQ
Admidio Mitgliederverwaltung

Admidio ist eine kostenlose Online-Mitgliederverwaltung, die für Vereine, Gruppen und Organisationen optimiert ist. Sie besteht neben der Mitgliederverwaltung aus einer Vielzahl an Modulen (Foto-, Download-, Terminverwaltung), die in eine neue oder besteh

08.01.2019 webmaster52@ | Kategorie: PHP/ Groupware
 Alle PHP Scripte anzeigen

Alle Zeitangaben in WEZ +2. Es ist jetzt 07:17 Uhr.