Rolf b: iframe gegen api - bitte bewerten

Beitrag lesen

Man muss eben aufpassen, was man erzeugt. Aus Sicht von JavaScript ist dies

var a = [ { "tt": "25", "mm": "08", "jjjj": "2016" }, { "tt": "26", "mm": "09", "jjjj": "2016" } ];

ein Array von zwei Objekten und das hier

var a = { "termin": { "tt": "25", "mm": "08", "jjjj": "2016" }, "termin":{ "tt": "26", "mm": "09", "jjjj": "2016" } };

ein Objektliteral, in dem zweimal das Property "termin" gesetzt wird und darum das zweite Property das erste überklatscht.

Wenn Du in PHP mit json_encode arbeitest, kannst Du durchaus Arrays nutzen, aber wie das bei PHP so ist, der Bursche denkt mit und öfter mal anders als man glaubt. Das, was im zweiten Beispiel steht, hätte diese PHP-Entsprechung:

$termine = ARRAY('termin' => ARRAY('tt' => '25','mm' => '08','jj' => '2016'),
                 'termin' => ARRAY('tt' => '25','mm' => '08','jj' => '2016'));

Unsinn? Ja, gewiss. Richtig ist es so:

$termine = ARRAY(ARRAY('tt' => '25','mm' => '08','jj' => '2016'),
                 ARRAY('tt' => '25','mm' => '08','jj' => '2016'));

Dann ist es in PHP ein numerisch indiziertes Array, kein assoziatives, und dann sollte json_encode auch das richtige Javascript-Array daraus machen, das ich ganz zu Anfang aufgeschrieben habe.

Gruß Rolf