zurück zur Startseite
  


Zurück XHTMLforum > Webentwicklung (außer XHTML und CSS) > Serveradministration und serverseitige Scripte
Seite neu laden PHP DOM XML Problem

Antwort
 
LinkBack Themen-Optionen Ansicht
  #1 (permalink)  
Alt 03.06.2008, 14:22
Erfahrener Benutzer
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 28.12.2006
Beiträge: 294
meGa befindet sich auf einem aufstrebenden Ast
Standard PHP DOM XML Problem

Hey Jungs,

ich habe meine Config Datei in das .xml Format gespeichert und will sie jetzt auslesen.

Hier mal meine Config Datei
Code:
<?xml version="1.0" encoding="ISO-8859-1"?> 
<config>
<system>
    <version>1.0.0.0</version>
</system>
</config>
Ich will das ich, dass später so in ein array z.b. speichern kann:

PHP-Code:
$config["system"]["version"]; 
ich habe auch bereits schon angefangen, komme aber nicht weiter.

PHP-Code:
$domDocument = new DOMDocument();
                
$domDocument->load($this->configFile);    
                
                foreach(
$domDocument->getElementsByTagName('*') as $element) {
                                        } 
Mein Problem ist wie bekomm ich wirklich nur das Element mit dem Inhalt ausgegeben? Danke schonmal
Mit Zitat antworten
Sponsored Links
  #2 (permalink)  
Alt 03.06.2008, 15:36
Benutzerbild von Pablo
4 8 15 16 23 42
XHTMLforum-Kenner
 
Registriert seit: 31.05.2004
Beiträge: 1.773
Pablo sorgt für eine eindrucksvolle AtmosphärePablo sorgt für eine eindrucksvolle Atmosphäre
Standard

Mit simpleXML geht das ganze viel einfacher und schneller als mit DOMDocument:
Allerdings gibt SimpleXML ein Object zurück, auf die Version greifst also mit $config->system->version zu, nicht mit einem Array wie du wolltest...

Gruß,
Pablo
__________________
Go Opera!
… oder Chrome. Auch cool.

Geändert von Pablo (03.06.2008 um 15:50 Uhr)
Mit Zitat antworten
Sponsored Links
  #3 (permalink)  
Alt 03.06.2008, 15:56
Erfahrener Benutzer
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 28.12.2006
Beiträge: 294
meGa befindet sich auf einem aufstrebenden Ast
Standard

Ok Danke das wäre dann die Alternative, jedoch würde ich gerne wissen wie es mit DOM geht.
Mit Zitat antworten
  #4 (permalink)  
Alt 03.06.2008, 16:39
Benutzerbild von fox
fox fox ist offline
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 11.09.2006
Beiträge: 1.011
fox sorgt für eine eindrucksvolle Atmosphärefox sorgt für eine eindrucksvolle Atmosphäre
Standard

Im Prinzip hilft dir immer print_r, um alle Elemente anzuzeigen, auf die du zugreifen kannst...
Mit Zitat antworten
  #5 (permalink)  
Alt 03.06.2008, 16:40
Erfahrener Benutzer
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 28.12.2006
Beiträge: 294
meGa befindet sich auf einem aufstrebenden Ast
Standard

Ich habs mir jetzt so gebaut:

PHP-Code:
$domDocument = new DOMDocument();
                
$domDocument->load($this->configFile);
                
$domXPath = new DOMXPath($domDocument);
                
$sections $domXPath->query('*');
                
                foreach(
$sections as $section) {                        
                       foreach(
$section->getElementsByTagname('*') as $element) {
                                           
$config[$section->tagName][$element->nodeName] = $element->nodeValue;
                       }
                } 
Was meint ihr?
Mit Zitat antworten
  #6 (permalink)  
Alt 03.06.2008, 19:58
Benutzerbild von netspy
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 13.08.2004
Ort: Leipzig
Beiträge: 1.956
netspy sorgt für eine eindrucksvolle Atmosphärenetspy sorgt für eine eindrucksvolle Atmosphäre
Standard

Zitat:
Zitat von meGa Beitrag anzeigen
Was meint ihr?
Wenn‘s funktioniert, ist es ok. Allerdings solltest du keine Konfigurationsdatei mit den (langsamen) DOM-Funktionen einlesen. Da das bei jedem Request aufgerufen wird, sollte man hier sehr auf Geschwindigkeit achten. Also entweder wie von Pablo vorgeschlagen SimpleXML nehmen oder - IMO besser - die Konfigurationsdatei gleich als PHP-Datei mit den entsprechenden Arrays machen, sodass nichts mehr umgewandelt werden muss. Nicht umsonst wird das bei vielen größeren Projekten genau so gemacht.

Mario
__________________
AppDev Blog · AppDev Forum
Mit Zitat antworten
  #7 (permalink)  
Alt 03.06.2008, 20:00
Erfahrener Benutzer
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 28.12.2006
Beiträge: 294
meGa befindet sich auf einem aufstrebenden Ast
Standard

Mhh ist DOM echt so langsam? Wie schauts mit einer .ini aus?
Mit Zitat antworten
  #8 (permalink)  
Alt 03.06.2008, 20:07
Benutzerbild von netspy
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 13.08.2004
Ort: Leipzig
Beiträge: 1.956
netspy sorgt für eine eindrucksvolle Atmosphärenetspy sorgt für eine eindrucksvolle Atmosphäre
Standard

Zitat:
Zitat von meGa Beitrag anzeigen
Mhh ist DOM echt so langsam? Wie schauts mit einer .ini aus?
Eine INI lässt sich mit Sicherheit schneller parsen. Warum aber nicht einfach eine PHP-Datei mit Arrays? Wie schon gesagt, wird das nicht umsonst bei vielen bekannten Projekten wie Wordpress oder phpBB so gemacht. Wenn man das vernünftig kommentiert, ist das auch für Endanwender nicht komplizierter als mit INIs oder XML.

Mario
__________________
AppDev Blog · AppDev Forum
Mit Zitat antworten
  #9 (permalink)  
Alt 03.06.2008, 20:24
Erfahrener Benutzer
XHTMLforum-Mitglied
Thread-Ersteller
 
Registriert seit: 28.12.2006
Beiträge: 294
meGa befindet sich auf einem aufstrebenden Ast
Standard

Ich finde so PHP Konfigdatei unschön. Weil der User der vllt 0 ahnugn hat mit php konfrontiert wird.
Mit Zitat antworten
Sponsored Links
  #10 (permalink)  
Alt 03.06.2008, 20:30
Benutzerbild von fox
fox fox ist offline
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 11.09.2006
Beiträge: 1.011
fox sorgt für eine eindrucksvolle Atmosphärefox sorgt für eine eindrucksvolle Atmosphäre
Standard

Dann solltest du aber zumindest auf SimpleXML umsteigen, das is wohl schon nen ganzen rutsch schneller...

Bei größeren Projekten wird sich das aber nicht mehr vermeiden lassen, PHP-Dateien zu verwenden. Du kannst ja auch eine Konfigurationsoberfläche zur Verfügung stellen und die Benutzer nicht selbts drin "rumpfuschen" lassen.
Mit Zitat antworten
Sponsored Links
Antwort

Themen-Optionen
Ansicht

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 aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
PHP Ansicht Offline Problem MarkusStar Serveradministration und serverseitige Scripte 3 09.09.2010 15:51
PHP Shoutbox - Problem aquila1810 Serveradministration und serverseitige Scripte 13 05.09.2010 20:16
Mit PHP in XML einfügen dows Serveradministration und serverseitige Scripte 9 10.03.2010 13:03
PHP Upload Problem tichy Serveradministration und serverseitige Scripte 2 29.10.2008 00:56
seltsames php problem verstoert Serveradministration und serverseitige Scripte 11 08.07.2008 10:50


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