Ein Datenaustausch zwischen Flash und PHP basiert meist auf XML-Dateien, jedoch ist das Handling nicht immer so einfach. Auch sind XML-Dateien bedingt durch ihre Struktur weit größer als der effektive Inhalt. Eine andere Möglichkeit für ein Datenaustausch wäre JSON. Der Vorteil ist zum ersten, dass die Dateien wesentlich kleiner sind. Zum zweiten kann man in AS3 sofort auf Array oder Object zugreiffen. JSON ist eigentlich optimal, wenn man bestimmte Parameter übergeben möchte. Und wie das ganze funktioniert, ist im Anschluss beschrieben.
Damit man in Flash AS3 überhaupt JSON benutzen kann, muss eine definierte Klasse importiert werden. An dieser Stelle auch gleich der Download der JSON-Klassen:
import com.adobe.serialization.json.JSON;var obj1:String;
obj1 = '{"key1":9933,"key2":123456,"key3":"5.13.67.89"}';var obj:Object = JSON.decode(obj1);
trace( obj.key1 );
/* Ausgabe
9933
*/import com.adobe.serialization.json.JSON;
var obj2:String;
obj2 = '{"Name":[{"key":"val1"},{"key":"val2"},{"key":"val3"}]}';
var obj:Object = JSON.decode(obj2);
trace( obj.Name );
/* Ausgabe
[object Object],[object Object],[object Object]
*/import com.adobe.serialization.json.JSON;
var obj2:String;
obj2 = '{"Name":[{"key":"val1"},{"key":"val2"},{"key":"val3"}]}';
var obj:Object = JSON.decode(obj2);
for ( var i = 0; i < obj.Name.length; i++ ) {
trace( obj.Name[i].key );
}
/* Ausgabe
val1
val2
val3
*/