Werte per XML auslesen

Einklappen
X
 
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge
  • Gast

    #1

    Werte per XML auslesen

    Hallo,
    ich möchte gerne verschiedene Werte per XML auslesen.
    In nachfolgendem Code wird leider nur die Außentemperatur angezeigt - nicht jedoch die anderen gewünschten Werte.
    Gebe ich die URL bzw. den Pfad manuell im Browser ein, erscheint der entsprechende XML-String mit dem gesuchten Value.
    Was mache ich falsch?

    PHP-Code:
    $xml = simplexml_load_file('http://'. $Username .':'. $Password .'@'. $Miniserver .'/dev/sps/io/Feuchte%20außen/state');
    echo '<h2>Feuchte außen: </h2><h1>'. $xml['value'] .'</h1>';
    $temp = $xml['value'];
    $temp = substr($temp, 0, -3);
    
    
    $xml = simplexml_load_file('http://'. $Username .':'. $Password .'@'. $Miniserver .'/dev/sps/io/1_Lüftungsstufe/state');
    echo '<h2>Lüftungsstufe: </h2><h1>'. $xml['value'] .'</h1>';
    
    
    
    $xml = simplexml_load_file('http://'. $Username .':'. $Password .'@'. $Miniserver .'/dev/sps/io/Temperatur%20außen/state');
    echo '<h2>Temperatur außen: </h2><h1>'. $xml['value'] .'</h1>'; 
    
  • svethi
    Lebende Foren Legende
    • 25.08.2015
    • 6320

    #2
    Was versuchst Du denn denn da? Der MS kann kein PHP
    Miniserver; KNX; Vitogate; EnOcean (EnOceanPi); Loxone Air; Caldav-Kalenderanbindung; RaspberryPi und für keine Frickellösung zu schade :-)

    Kommentar

    • Christian Fenzl
      Lebende Foren Legende
      • 31.08.2015
      • 11238

      #3
      Das XML, das der MS zurückliefert, ist nicht XML-valide. In dem Fall schlägt der PHP XML-Parser auf.
      Probier, den Content selbst zu parsen.

      Das ist der Code, den wir in LoxBerry verwenden :
      https://github.com/mschlenstedt/Loxb...ry_io.php#L233

      Wenn du einen LoxBerry hast, kannst du das mit LoxBerry XL machen:
      Code:
      require "loxberry_XL.php";
      $val1=clean ($ms1->get('Feuchte außen')) ;
      $val2=clean ($ms1->get('1_Lüftungsstufe')) ;
      $val3=clean ($ms1->get('Temperatur außen')) ;
      Außer deinem HTML-Output ist das der fertige Code mit entfernten Einheiten.
      Zuletzt geändert von Christian Fenzl; 07.12.2020, 01:06.
      Hilfe für die Menschen der Ukraine: https://www.loxforum.com/forum/proje...Cr-die-ukraine

      Kommentar

      • Gast

        #4
        Hallo zusammen,

        vielen Dank für die Antworten.
        Das mit dem Loxberry_XL.php hat prima funktioniert. VIELEN DANK!

        Gruß
        mhlox83

        Kommentar

        Lädt...