php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2010

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 18.03.2010, 11:52  
Benutzer
 
Registriert seit: 09.03.2009
Beiträge: 74
ocean85 befindet sich auf einem aufstrebenden Ast
Standard XML mittels explode zerlegen

Hallo,

hab mich gestern das erste mal mit XML beschäftigt. Hier meine XML Datei

Code:
<image>
<filename>Bild_132.jpg</filename>
</image>
<image>
<filename>Bild_125.jpg</filename>
</image>
Dieses XML möchte ich nun mittels PHP so zerlegen das ich jede <filename>-Instanz einzeln ansprechen kann. Erstmal gebe ich jede <filename>-Instanz einzeln aus;

PHP-Code:
  $doc = new DOMDocument();
  
$doc->load'gallery.xml' );
  
  
$images $doc->getElementsByTagName"image" );
  foreach( 
$images as $image )
  {
  
$filenames $image->getElementsByTagName"filename" );
  
$filename $filenames->item(0)->nodeValue;
  
  
  echo 
"$filename\n<br>"
Jetzt möchte ich das ganze mittels explode zerlegen;

PHP-Code:
$zerlegen '\n'.$filename;
$array explode('\n'$test);  
print_r($array); 
meine Ausgabe soll so aussehen;

Code:
$array[0] = 'Bild_132.jpg';
$array[1] = 'Bild_125.jpg';
Nur klappt das nicht... was mache ich falsch?
ocean85 ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 18.03.2010, 12:08  
Erfahrener Benutzer
 
Registriert seit: 19.06.2009
Beiträge: 837
PHP-Kenntnisse:
Fortgeschritten
Jens Clasen ist einfach richtig nettJens Clasen ist einfach richtig nettJens Clasen ist einfach richtig nettJens Clasen ist einfach richtig nettJens Clasen ist einfach richtig nett
Standard

Versteh ich nicht. Du kannst doch sowohl via Dom, als auch via SimpleXML jeden einzelne Filename direkt ansprechen. Wozu der Rest?

Gruß Jens
Jens Clasen ist offline  
Alt 18.03.2010, 12:25  
Erfahrener Benutzer
 
Registriert seit: 21.12.2004
Beiträge: 5.240
PHP-Kenntnisse:
Fortgeschritten
mepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblick
mepeisen eine Nachricht über ICQ schicken mepeisen eine Nachricht über Skype™ schicken
Standard

Entwirre deine Knoten. Statt echo "$filename\n<br>" kannst du die Dateinamen genausogut sofort in ein Array speichern. Damit fällt das potentielle Explode weg und deine Gedankensperre fällt ebenso weg.
__________________
www.php-maven.org PHP und Maven vereint: Build/Deploy/Produktion/Konfiguration, Projekt Management, CI, PHPUnit, zahlreiche Frameworks
Twitter @ https://twitter.com/#!/mepeisen und Facebook @ http://t.co/DZnKSUih
mepeisen ist offline  
Alt 18.03.2010, 14:09  
Benutzer
 
Registriert seit: 09.03.2009
Beiträge: 74
ocean85 befindet sich auf einem aufstrebenden Ast
Standard

ist schonmal super zu wissen das es geht - und das sogar noch einfacher - nur finde ich nichts dazu "wie"? Aus dem Manual werd ich einfach nicht schlau... vielleicht liegt es daran das ich das erste mal mit XML arbeite
ocean85 ist offline  
Alt 18.03.2010, 14:43  
Erfahrener Benutzer
 
Registriert seit: 21.12.2004
Beiträge: 5.240
PHP-Kenntnisse:
Fortgeschritten
mepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblick
mepeisen eine Nachricht über ICQ schicken mepeisen eine Nachricht über Skype™ schicken
Standard

Das hat mir XML absolut nichts zu tun. Du gibst bei deinem obigen Beispiel etwas aus (echo). Statt es auszugeben, muss es in eine Variable. http://www.php.de/php-einsteiger/489...rundlagen.html
__________________
www.php-maven.org PHP und Maven vereint: Build/Deploy/Produktion/Konfiguration, Projekt Management, CI, PHPUnit, zahlreiche Frameworks
Twitter @ https://twitter.com/#!/mepeisen und Facebook @ http://t.co/DZnKSUih
mepeisen ist offline  
Alt 18.03.2010, 16:48  
moderatives Dielektrikum
 
Benutzerbild von nikosch
 
Registriert seit: 21.05.2008
Beiträge: 35.991
PHP-Kenntnisse:
Fortgeschritten
nikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunftnikosch hat eine strahlende Zukunft
Standard

Deinem "xml" fehlt zuallererst schon mal ein Root-Knoten. Desweiteren wurde ja bereits auf DOM und die anderen XML-Zugriffsmethoden hingewiesen: XML ist ein standardisiertes Format, das man auch mit den zugehörigen Mitteln verarbeiten sollte. Sonst hast Du nichts gewonnen.
__________________
--
One pixel is still too big. Please make it smaller. ASAP.

Initiative Mittelstand.
Die wichtigste Gestaltungsregel im Screendesign ist Pi mal Daumen des Arbeitgebers.
--
nikosch ist gerade online  
Alt 19.03.2010, 13:24  
Benutzer
 
Registriert seit: 09.03.2009
Beiträge: 74
ocean85 befindet sich auf einem aufstrebenden Ast
Standard

Hallo Zusammen,

vielen Dank für eure Hilfe. Ein bisschen Nachdenken hat zur richtigen Lösung geführt So sieht jetzt mein XML aus;

Code:
<image>
<id>0</id>
<filename>Bild_0.jpg</filename>
<caption></caption>
</image>
<image>
<id>1</id>
<filename>Bild_1.jpg</filename>
<caption></caption>
</image>
<image>
<id>2</id>
<filename>Bild_2.jpg</filename>
<caption></caption>
</image>
und so meine Ausgabe - um z.B. den Wert der letzten <filename>-Instanz auszugeben;

PHP-Code:
$xml simplexml_load_file('gallery.xml');    

echo 
$xml->image[2]->filename
Naja, jetzt stellen sich mir aber schon wieder die nächsten Fragen

Die XML-Datei stellt praktisch die Datenbank/Referenz für eine Flash Galerie dar. <filename> beinhaltet die Dateinamen der Bilder.

Um nun Bilder austauschen oder löschen zu können benötige ich ein Formular, welches sämtliche in der XML-Datei vorhandene Bilder vom Server holt und Grafisch darstellt.

Nun stelle ich mir das vor wie eine sql Abfrage... ich müsste praktisch jeden Eintrag in der XML Datei seperat verarbeiten können - nur wie ohne Schleife
ocean85 ist offline  
Alt 19.03.2010, 13:33  
Erfahrener Benutzer
 
Registriert seit: 19.06.2009
Beiträge: 837
PHP-Kenntnisse:
Fortgeschritten
Jens Clasen ist einfach richtig nettJens Clasen ist einfach richtig nettJens Clasen ist einfach richtig nettJens Clasen ist einfach richtig nettJens Clasen ist einfach richtig nett
Standard

Kannst Du doch. Was hindert Dich dran, eine Schleife zu erstellen? Schau Dir mal Beispiel #4 im Manual an

Gruß Jens
Jens Clasen ist offline  
 


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine 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
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
String in Array zerlegen Schnatterinchen PHP Tipps 2010 3 15.02.2010 12:45
[Erledigt] explode Array marc77 PHP Tipps 2009 11 27.07.2009 14:02
UPDATE/INPUT mehrerer Datensätze mittels Array/Schleife? dieter_danger PHP Tipps 2009 6 12.07.2009 13:38
Probelm mit explode wmp PHP Tipps 2008 1 08.12.2008 13:41
Wireshark SSL Handshake debugging-Handshake protokoll mittels PHP + Curl brian johnson Off-Topic Diskussionen 0 06.11.2008 11:54
[Erledigt] Anzahl der von Explode gelieferten strings? nofear87 PHP Tipps 2008 3 25.10.2008 11:30
[Erledigt] explode mit Zeilenumbruch und leerzeichen martl666 PHP Tipps 2008 19 09.09.2008 12:46
Übergabe von eingegebenem String mittels Formular und POST?! vampsoftchef PHP Tipps 2006 7 18.10.2006 20:06
[Erledigt] E-Mail zerlegen in Betreff, Absender und Body PHP Tipps 2005-2 4 13.10.2005 15:36
mysql mittels php abfragen- array problem PHP Tipps 2005-2 6 20.07.2005 15:21
String in seine Einzeilteile zerlegen PHP Tipps 2005 2 08.04.2005 00:09
[Erledigt] Dateiupload mittels POST PHP-Fortgeschrittene 5 04.02.2005 07:07
zeichenkette zerlegen? PHP Tipps 2004 6 12.08.2004 02:43
String zerlegen im Array PHP Tipps 2004 4 29.06.2004 08:33
explode() mal anders! Nur wie? Broadcast PHP Tipps 2004 11 09.06.2004 20:07

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
php xml explode, php explode xml, php xml zerlegen, xml explode, xml datei in php variablen zerlegen, explode xml, xml array zerlegen, xml zerlegen php, php xml string zerlegen, xml tag explode php, xml datei zerlegen php, dateiname zerlegen php, php xml to string trennen, php dateiname zerlegen, php explode(, xml bilder in php, image caption explode php, php explode xml-datei, java xml auseinander nehmen, php xml datei zerlegen

Alle Zeitangaben in WEZ +2. Es ist jetzt 21:32 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum