+ Antworten
Ergebnis 1 bis 6 von 6
  1. #1
    Registriert seit
    Jul 2013
    Beiträge
    122

    Standard JSON decode in variable zu schreiben

    Hallo
    Kann mir jemand hiermit weiterhelfen:
    Dies hatte immer funktioniert:

    Code:
    var_dump(json_decode($content1, true));
    $info1 = json_decode($content1, True);
    SetValueInteger(45355, $info->batteries->capacity->full);
    Die neue ausgabe ist folgendes

    Code:
    array(2) {
      ["batteries"]=>
      array(1) {
        [0]=>
        array(6) {
          ["id"]=>
          int(0)
          ["charge"]=>
          int(39)
          ["voltage"]=>
          int(17623)
          ["current"]=>
          int(-84)
          ["temperature"]=>
          int(257)
          ["capacity"]=>
          array(2) {
            ["full"]=>
            int(1200)
            ["remaining"]=>
            int(468)
          }
        }
      }
      ["successful"]=>
      bool(true)
    }
    Das ganze hat sich jetzt so verändert dass dies hinzu gekommen ist

    array(1) {
    [0]=>

    Jetz bekomme ich immer fogende Fehler:


    Notice: Undefined property: stdClass::$batteries in C:\IP-Symcon\scripts\53117.ips.php on line 47

    Notice: Trying to get property 'capacity' of non-object in C:\IP-Symcon\scripts\53117.ips.php on line 47

    Notice: Trying to get property 'full' of non-object in C:\IP-Symcon\scripts\53117.ips.php on line 47


    Kann mir jemand bitte erklären wie ich es anstelle wieder den Wert zu bekommen

    Vielen Dank

  2. #2
    Registriert seit
    Oct 2011
    Ort
    Hattersheim (Hessen)
    Beiträge
    6,370

    Zitat Zitat von MichB Beitrag anzeigen
    Kann mir jemand bitte erklären wie ich es anstelle wieder den Wert zu bekommen
    Code:
    $info->batteries[0]->capacity->full
    Wenn Du das true weglässt Du willst ja als Standard Objekt zugreifen. Wenn Du true setzt ist das ein Array dann muss das

    Code:
    $info['batteries'][0]['capacity']['full']
    lauten.
    Geändert von Fonzo (10.08.19 um 21:24 Uhr)

  3. #3
    Registriert seit
    Jun 2012
    Ort
    House of Dragons @ Lübeck
    Beiträge
    8,929

    Zitat Zitat von MichB Beitrag anzeigen
    Dies hatte immer funktioniert:
    Das kann noch nie funktioniert haben.
    Wenn du bei json_decode im zweiten Parameter true angibst, wird das ein Array und kein Objekt.
    Also lass das true weg.
    PHP-Code:
    var_dump(json_decode($content1));
    $info json_decode($content1);
    SetValueInteger(45355$info->batteries[0]->capacity->full); 
    Oder als Array:
    PHP-Code:
    var_dump(json_decode($content1true));
    $info json_decode($content1true);
    SetValueInteger(45355$info['batteries'][0]['capacity']['full']); 
    Michael
    Geändert von Nall-chan (10.08.19 um 21:34 Uhr)
    on Win7VM (ESXi): I5, 24GB RAM, HW-RAID5, 3xSat | HW: CCU + 123 Geräte (506ch), EM1000, CUL, 1Wire, XBee, ELRO 433MHz, FritzBox Cable, Android Phone + Tablet, Samsung C-Serie TV +SamyGo-Ext, Onkyo NR| SW: IPS, Apache2(mod_ssl/PHP), MySQL, hMailServer, PRTG, Rising AV, Piwik, RoundCube, Wordpress, WinLIRC, WHS2011, MediaPortal, XBMC

  4. #4
    Registriert seit
    Oct 2011
    Ort
    Hattersheim (Hessen)
    Beiträge
    6,370

    Zitat Zitat von MichB Beitrag anzeigen
    Code:
    $info1 = json_decode($content1, True);
    $info1 muss dann logischerweise $info heißen, sonnst kannst Du ja nicht mit $info auf den array zugreifen.

  5. #5
    Registriert seit
    Jun 2012
    Ort
    House of Dragons @ Lübeck
    Beiträge
    8,929

    Copy und Paste Fehler aus seinen Code
    Das hier gibt es aber auch nicht ->[0]
    Michael
    on Win7VM (ESXi): I5, 24GB RAM, HW-RAID5, 3xSat | HW: CCU + 123 Geräte (506ch), EM1000, CUL, 1Wire, XBee, ELRO 433MHz, FritzBox Cable, Android Phone + Tablet, Samsung C-Serie TV +SamyGo-Ext, Onkyo NR| SW: IPS, Apache2(mod_ssl/PHP), MySQL, hMailServer, PRTG, Rising AV, Piwik, RoundCube, Wordpress, WinLIRC, WHS2011, MediaPortal, XBMC

  6. #6
    Registriert seit
    Jul 2013
    Beiträge
    122

    Super Vielen Dank durch ausprobieren hatte ich noch das true drin und auch ein fehler bei der variabel info1

    Vielen Dank an euch

    Gruss,

Ähnliche Themen

  1. JSON String in Variable Schreiben
    Von BommelPommel im Forum Entwicklung mit PHP-SDK/Delphi-SDK
    Antworten: 1
    Letzter Beitrag: 13.03.19, 19:50
  2. Variable schreiben...?
    Von stfan1409 im Forum Skripte, PHP, SQL
    Antworten: 5
    Letzter Beitrag: 06.04.18, 18:59
  3. FS20EX Variable Schreiben
    Von orion im Forum Sonstige Funkkomponenten / Wetterstationen
    Antworten: 5
    Letzter Beitrag: 05.03.16, 18:53
  4. JSON decode
    Von Isi im Forum Skripte, PHP, SQL
    Antworten: 16
    Letzter Beitrag: 03.01.16, 18:44
  5. GIF in Variable schreiben
    Von Axel37 im Forum Allgemeine Diskussion (2.x/3.x)
    Antworten: 5
    Letzter Beitrag: 11.02.15, 18:25