nicksmith: Verschachteltes Array auslesen

Hey Leute,

ich benötige Hilfe um ein Verschachteltes Array auszulesen.

Das Array sieht wie folgt aus:
Array ( [success] => 1 [errors] => Array ( ) [data] => Array ( [0] => Array ( [cid] => 128 [channel_name] => Channel von Nick_Smith ) ) )

Wie kann man den Wert [cid] am besten auslesen. Mit Arrays hab ich mich bis jetzt noch nicht befasst. Wäre also nett, wenn ihr mir helfen könntet.

Mfg.
NickSmith

  1. Hallo,

    Array (
      [success] => 1
      [errors] => Array ( )
      [data] => Array (
         [0] => Array (
            [cid] => 128
            [channel_name] => Channel von Nick_Smith
          )
       )
    )

    die Ausgabe von var_dump() oder print_r() liest sich leichter, wenn du nicht alles in eine Zeile klebst, sondern das Originalformat unverändert lässt.

    Wie kann man den Wert [cid] am besten auslesen. Mit Arrays hab ich mich bis jetzt noch nicht befasst. Wäre also nett, wenn ihr mir helfen könntet.

    Du hast ein Array, lass uns annehmen, es heiße $a. Dieses Array hat die drei Elemente success, errors und data, auf die du mit $a['success'], $a['errors'] und $a['data'] zugreifen kannst. Nun ist $a['data'] seinerseits wieder ein Array, das aber nur ein Element mit dem Index bzw. Key 0 hat - das erhält man also mit $a['data'][0]. Und das ist seinerseits auch wieder ein Array mit den Elementen cid und channel_name, also $a['data'][0]['cid'] und $a['data'][0]['channel_name'].

    Ciao,
     Martin

    --
    Abraham sprach zu Bebraham: Kann i mal dei Cebra ham?
    Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(
    1. Hallo,

      Array (
        [success] => 1
        [errors] => Array ( )
        [data] => Array (
           [0] => Array (
              [cid] => 128
              [channel_name] => Channel von Nick_Smith
            )
         )
      )

      die Ausgabe von var_dump() oder print_r() liest sich leichter, wenn du nicht alles in eine Zeile klebst, sondern das Originalformat unverändert lässt.

      Wie kann man den Wert [cid] am besten auslesen. Mit Arrays hab ich mich bis jetzt noch nicht befasst. Wäre also nett, wenn ihr mir helfen könntet.

      Du hast ein Array, lass uns annehmen, es heiße $a. Dieses Array hat die drei Elemente success, errors und data, auf die du mit $a['success'], $a['errors'] und $a['data'] zugreifen kannst. Nun ist $a['data'] seinerseits wieder ein Array, das aber nur ein Element mit dem Index bzw. Key 0 hat - das erhält man also mit $a['data'][0]. Und das ist seinerseits auch wieder ein Array mit den Elementen cid und channel_name, also $a['data'][0]['cid'] und $a['data'][0]['channel_name'].

      Ciao,
      Martin

      Vielen dank. Das mit dem print_r() wurde mir so in einer Zeile ausgegeben.

      Hatte es schon kurz bevor ich hier wieder geschaut habe auch herausgefunden. Einmal mit print_r angeschaut und dann war mir klar wie das verschachtelt war.

      1. Hello,

        Vielen dank. Das mit dem print_r() wurde mir so in einer Zeile ausgegeben.

        Das liegt an deinem Kontext.
        Wenn Du die Ausgabe ins HTML-Umfeld schreibst, hilft eine passende Auszeichnung

        Variante 1:

          
        <?php  
          
        header('Content-Type: text/plain'; Charset=utf-8');  
          
        print_r($_array);  
          
        ?>  
          
        
        

        Variante 2:

          
        <?php  
          
        echo "<pre>\r\n";  
        echo htmlspecialchars(print_r($_array,1)) . "\r\n";  
        echo "</pre>\r\n";  
          
        ?>  
          
        
        

        Liebe Grüße aus dem schönen Oberharz

        Tom vom Berg

        --
         ☻_
        /▌
        / \ Nur selber lernen macht schlau
        Die ultimative Seite für Selbermacher
        1. Hi,

          Das mit dem print_r() wurde mir so in einer Zeile ausgegeben.

          Das liegt an deinem Kontext.
          Wenn Du die Ausgabe ins HTML-Umfeld schreibst, hilft eine passende Auszeichnung

          Variante 1:

          <?php

          header('Content-Type: text/plain'; Charset=utf-8');

          print_r($_array);

          ?>

          
          >   
          > Variante 2:  
          >   
          > ~~~php
          
          <?php  
          
          >   
          > echo "<pre>\r\n";  
          > echo htmlspecialchars(print_r($_array,1)) . "\r\n";  
          > echo "</pre>\r\n";  
          >   
          > ?>
          
          

          Variante 3 (IMO die einfachste):

          Ausgabe von print_r() aus dem Quelltext kopieren, nicht aus der Browser-Anzeige.

          Ciao,
           Martin

          --
          Einer aktuellen Erhebung zufolge sind zehn von neun Ehefrauen eifersüchtig auf ihren Mann.
          Selfcode: fo:) ch:{ rl:| br:< n4:( ie:| mo:| va:) de:] zu:) fl:{ ss:) ls:µ js:(