<test>
<zahl>2.5</zahl>
</test>
Das Problem ist, das in $zahl[„test“] nicht 2.5 sodern ein Objekt gespeichert wird.
$zahl[„test“] ist also vom Typ object.
Deswegen kann ich $zahl[„test“] nicht verwenden, um mit ihr zu rechnen.
Also muss ich $zahl[„test“] in eine Variable vom Typ int umwandeln.
Allerdings will mir das einfach nicht gelingen!
Ich habe schon alle möglichen Möglichkeiten ausprobiert:
Klar sieht sie anders aus - ich habe sie auf das wesentliche reduziert und ein Beispiel gegeben.
Der ganze Rest drumherum würde wohl wenig nützen. (Aber lügen würde ich das nicht nennen.)
Aber aus deiner Aussage kann ich entnehmen, dass du einen Gedanken hast, woran es liegen könnte.
Darum schreibe ich hier einfach mal den ganzen Inhalt der XML-Datei rein:
preisliste.xml:
[CODE]
<?xml version="1.0" encoding="ISO-8859-1" ?>
4.00
4.50
0.50
0.70
1.00
1.30
1.20
1.60
[/CODE]Und hier der Ausschnitt, der die Datei verarbeitet:
[PHP]
class preise {
(…)
protected function erstelle_preisliste() {
$preisliste = simplexml_load_file($this -> preisliste_datei);
// schreibt die Preise für Grundpizzen in ein globales Array
$GLOBALS["preise_grundpizza"] = array();
$GLOBALS["preise_grundpizza"]["groesse1"] = $preisliste -> grundpizza -> groesse1;
$GLOBALS["preise_grundpizza"]["groesse2"] = $preisliste -> grundpizza -> groesse2;
// schreibt die Preise für Beläge der Preiskategorie 1 in ein globales Array
$GLOBALS["preise_belaege_preiskategorie1"] = array();
$GLOBALS["preise_belaege_preiskategorie1"]["groesse1"] = $preisliste -> belaege -> preiskategorie1 -> groesse1;
$GLOBALS["preise_belaege_preiskategorie1"]["groesse2"] = $preisliste -> belaege -> preiskategorie1 -> groesse2;
// schreibt die Preise für Beläge der Preiskategorie 2 in ein globales Array
$GLOBALS["preise_belaege_preiskategorie2"] = array();
$GLOBALS["preise_belaege_preiskategorie2"]["groesse1"] = $preisliste -> belaege -> preiskategorie2 -> groesse1;
$GLOBALS["preise_belaege_preiskategorie2"]["groesse2"] = $preisliste -> belaege -> preiskategorie2 -> groesse2;
// schreibt die Preise für Beläge der Preiskategorie 3 in ein globales Array
$GLOBALS["preise_belaege_preiskategorie3"] = array();
$GLOBALS["preise_belaege_preiskategorie3"]["groesse1"] = $preisliste -> belaege -> preiskategorie3 -> groesse1;
$GLOBALS["preise_belaege_preiskategorie3"]["groesse2"] = $preisliste -> belaege -> preiskategorie3 -> groesse2;
}
(…)
}
[/PHP]Später soll dann mit diesen Preisen gerechnet werden.
Danke schon mal im voraus, das du versuchst, mir zu helfen.