PHP - Text aus datei loeschen

Wenn es moeglich ist wuerde ich das lieber ohne XML und DOMDocument machen, weil ich mit solchen Sachen noch zu wenig Erfahrung habe. Ansonsten muss ich mich noch weit genug darein lesen.
 
Wie willst du denn ein XML-Datenformat ohne einen XML-Parser einlesen?

Mit Stringfunktionen und regulären Ausdrücken? Ne, das ist keine so gute Idee.
 
Mit regulaeren Ausdruecken kenne ich mich auch nicht aus, aber mit den normalen PHP Stringfunktionen habe ich gedacht waere es moeglich.
 
Eigentlich ist es ganz einfach.
Bsp.:
PHP:
<?php

$xmlStr = <<< EOF
<root>
<Auftrag5214>
<Volumen>1</Volumen>
<Anzahl>1</Anzahl>
<Richtung>Seitwaerts</Richtung>
</Auftrag5214>
<Auftrag65654>
<Volumen>2</Volumen>
<Anzahl>14</Anzahl>
<Richtung>Rueckwaerts</Richtung>
</Auftrag65654>
</root>
EOF;

$xml = simplexml_load_string($xmlStr);
foreach ($xml->children() as $order) {
	echo $order->getName(), "\r\n";
}
Gibt folgendes aus:
Code:
Auftrag5214
Auftrag65654

aber mit den normalen PHP Stringfunktionen habe ich gedacht waere es moeglich.
Es ist schon möglich, nur würde ich davon dringends abraten.
 
Wie muss man das schreiben wenn ich eine Textdatei statt eines string einlesen will und als Ausgabe jeweils in Arrays die Werte der Tags bekommen, so zum Beispiel:

PHP:
$Volumen[0] = 1
$Volumen[1] = 2

$Anzahl[0] = 1
$Anzahl[1] = 14
 
PHP:
$xml = simplexml_load_file('dein-dateiname.xml');

PHP:
$volumes = array();
$amounts = array();

foreach ($xml->children() as $order) {
    $volumes[] = intval($order->Volumen);
    $amounts[] = intval($order->Anzahl);
}
var_dump($volumes, $amounts);


PS: Ich habe dein Zitat meiner Antwort entfernt. Du brauchst nicht meine ganze Antwort zitieren, es ist klar, dass du dich auf den vorherigen Beitrag im Ganzen beziehst, wenn du nicht zitierst ;)
 
Danke, das sieht gut aus damit.
Aber irgendetwas stimmt noch nicht bei der Ausgabe zeigt er mir fuer die Arrays immer den Typ int() an, manche Tags haben aber auch strings und dort ist dann kein Inhamt. Hast du eine Idee was falsch ist?
 
Ich benutze im Code oben die Funktion [phpf]intval[/phpf], welche automatisch zu Zahlen konvertiert.

Jetzt ist die Frage wie du leere Tags behandeln möchtest. Wenn du alles als normale Strings haben möchtest, dann streiche einfach [phpf]intval[/phpf] aus dem Code.
 
Danke, das funktioniert jetzt alles. Ich versuche dann in Zukunft auch oefter DOMDocumment und XML solche Sachen zu machen

Hast du vielleicht noch ein Tipp fuer mich wie ich jetzt erreichen kann das die Daten welche ich aus der XML Datei auslese immer von neuem ausgelesen werden und somit automatisch aktualisert werden, aber ohne das ich die ganze Seite mit dem Brower neu laden muss?
 
1. Wie wird dein PHP-Backend von der Aktualisierung erfahren?

2. Soll das Frontend (JS) ständig Anfragen schicken, ob Updates verfügbar sind?
Oder soll das PHP-Backend über WebSockets o.Ä. Push-Nachrichten senden?
 
Zurück