problem mit Array to string conversion
Diese Seite verwendet Cookies. Durch die Nutzung unserer Seite erklären Sie sich damit einverstanden, dass wir Cookies setzen. Weitere Informationen
-
-
Laut Fehlermeldung ist
$test['0']['success']
ein Array, d.h. du kannst das nicht mitecho
ausgeben. Mitecho
kannst du lediglich die "Endwerte" eines Arrays ausgeben lassen.
Wenn du nicht weißt, wie dein Array genau aussieht, kannst du dir ganz einfach einen Überblick verschaffen:
-
das ist das array
Quellcode
- Array
- (
- [0] => Array
- (
- [result] => success
- [is_success] => 1
- [source] => getLatestConsoleLogs
- [success] => Array
- (
- [0] => Array
- (
- [time] => 1462474798
- [line] => [20:59:58 INFO]: [0;33;22m[ClearLag] [0;32;1mRemoved 3 Entities![m
- )
- [1] => Array
- (
- [time] => 1462475167
- [line] => [21:06:07 WARN]: [WebAuction+] An update is available!
- )
- [2] => Array
- (
- [time] => 1462475167
- [line] => [21:06:07 WARN]: [WebAuction+] You're running 1.1.7 new version available is 1.2.28
- )
- )
- )
-
$test[0]['success']
ist ein Array, deswegen kannst du das mit einem einfachen echo wie gesagt nicht ausgeben. Du kannst aber einen Wert innerhalb dieses Arrays nehmen, also z.B.$test[0]['success'][0]['time']
.
Oder, falls du nur prüfen möchtest, ob das success-Array vorhanden ist kannst du z.B. mit der array_key_exists() Funktion arbeiten -
ok danke ich möchte gerne alle werte auslesen ich habe es schoon mit einer while verscht aber damit geht das nicht so gut
-
Für Arrays bieten sich
foreach
sehr an. In deinem Fall eine doppelteforeach
, weil sich darin ja nochmals Arrays befinden.
-
ok danke aber ich kann nur den aktuellen wert auslesen möchte aber gerne alle auslesen wer sehr nett wen ich da noch Hilfe bekomme dann bin ich zufrieden
-
Die Frage ist, was du damit machen möchtest. Du könntest dir die Werte in ein neues Array speichern oder in vorher definierte Variablen schreiben lassen oder du nimmst die Array-Keys als Variablen. Ohne eine Info, was du damit machen möchtest wirds schwierig eine konkrete Hilfe anzubieten.
-
ja es soll so eine art von Console werden und es sollen immer die letzten 15 Zeilen ausgegeben werder
-
Dann würde ich spontan sagen, du gibst es einmal aus und speicherst es danach in ein Array, damit du die History aufbauen kannst.
PHP-Quellcode
- $history = [];
- foreach ($test[0]['success'] as $arry => $inner) {
- foreach ($inner as $key => $value) {
- $history[$key] = $value; // Zeitstempel als Key, damit du im Zweifelsfall danach sortieren kannst
- echo $value; // falls du die Ausgabe noch formatieren möchtest, kannst du statt dem echo auch eine Funktion aufrufen
- }
- }
-
Teilen
- Facebook 0
- Twitter 0
- Google Plus 0
- Reddit 0