Hallo zusammen,
sicherlich eine einfache Frage, aber meine Lösungsansätze bringen mich zu keinem Ergebniss.
Damit erstelle ich eine JSON Datei. Mit diesem Code klappt es auch wunderbar. Raus kommt...
Jetzt zu meinem Problem...
Nun möchte ich einen weitern Eintrag (glaube Array oder doch Objekt) (bsp. mit dem Index/Key 222) hinzufügen.
Ich habe es folgendermassen probiert...
So, sollte es schlussendlich aussehen. Sollte ich den Trick einmal raus haben, geht auch die weitere anpassung reibungslos, aber hier hackt es.
Natürlich JSON konform und nicht das Array am ende des vorhandenen einfach anfügen.
Viele Grüße
sicherlich eine einfache Frage, aber meine Lösungsansätze bringen mich zu keinem Ergebniss.
PHP-Code:
$handle = fopen ( "$dateiname", "w" );
$artikel = array();
$artikel[111]['datum'] = 'test1';
$artikel[111]['uhrzeit'] = 'test2';
$artikel[111]['test'] = 'xxxxxxxx';
$result = array ('artikel' => $artikel);
fwrite($handle, json_encode($result));
fclose ( $handle );
Damit erstelle ich eine JSON Datei. Mit diesem Code klappt es auch wunderbar. Raus kommt...
Code:
{"artikel":{"111":{"datum":"test1","uhrzeit":"test2","test":"xxxxxxxx"}}}
Jetzt zu meinem Problem...
Nun möchte ich einen weitern Eintrag (glaube Array oder doch Objekt) (bsp. mit dem Index/Key 222) hinzufügen.
Ich habe es folgendermassen probiert...
PHP-Code:
//Öffne hier die Datei im Schreib UND Lese Modus
$handle = fopen ( "$dateiname", "w+" );
//lese meine vorhandene test.json ein
$json_erweitern = json_decode($handle, true);
//erstelle ein neues Array
$artikel = array();
$artikel[222]['datum'] = 'test1';
$artikel[222]['uhrzeit'] = 'test2';
$artikel[222]['test'] = 'xxxxxxxx';
$result = array ('artikel' => $artikel );
//HIER VERSUCHE ICH DIESE BEIEN IRGENDWIE ZUSAMMEN ZU BEKOMMEN (Weder das eine, noch das andere Funktioniert)
$neu_arr = array_merge($json_erweitern, $result);
//$neu_arr = $json_erweitern + $result;
fwrite($handle, json_encode($neu_arr));
fclose ( $handle );
Code:
"{"artikel":{"111":{"datum":"test1","uhrzeit":"test2","test":"xxxxxxxx"},"222":{"datum":"test1","uhrzeit":"test2","test":"xxxxxxxx"}}}"
Natürlich JSON konform und nicht das Array am ende des vorhandenen einfach anfügen.
Viele Grüße
Kommentar