Передача ByteArray из flash (as3) в AMFPHP (2.0.1) - PullRequest
1 голос
/ 13 марта 2012

У меня проблема с передачей ByteArray из flash (as3) в amfphp для сохранения изображения. Со старой версией amfphp, все работало в прошлом ... сейчас, с новой версией у меня много проблем. Я использую версию 2.0.1, и первая проблема заключается в том, что я должен сделать это для доступа к моей информации:

function SaveAsJPEG($json)
    {
        $string =  json_encode($json);
        $obj = json_decode($string);

        $compressed = $obj->{'compressed'};
    }

в прошлом я писал только:

function SaveAsJPEG($json)
    {
        $compressed = $json['compressed'];
    }

В любом случае ... теперь я могу взять все данные (если я использую "$ json ['сжатый']", я получаю сообщение об ошибке), но я не могу получить свои данные ByteArray. С флэша я пишу это:

var tempObj:Object = new Object();
tempObj["jpgStream "]=  createBitStream(myBitmmapData);  // return ByteArray
tempObj["compressed"] = false;
tempObj["dir"] = linkToSave;
tempObj["name"] = this.imageName;

Итак ... в моем классе php я получаю всю правильную информацию, кроме "jpgStream", который кажется "нулевым".

У вас есть идеи?

1 Ответ

0 голосов
/ 11 апреля 2012

Я думаю, что вы получаете 'null' из-за json_encode / decode. Попробуйте использовать

    $data = (array) $json;
    $compressed = $data['compressed'];
    
Это может помочь http://www.silexlabs.org/amfphp/documentation/data-types/
...