Verschachteltes Array auslesen
nicksmith
- php
2 Der Martin
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
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
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.
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
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 AuszeichnungVariante 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