从闪存(as3)到AMFPHP(2.0.1)的旁路阵列

从闪存(as3)到AMFPHP(2.0.1)的旁路阵列,php,json,actionscript-3,bytearray,amfphp,Php,Json,Actionscript 3,Bytearray,Amfphp,我从flash(as3)向amfphp传递数组以保存图像时遇到问题。 使用旧版本的amfphp,所有这些都在过去工作过…现在,使用新版本我有很多问题。 我使用的是2.0.1版,第一个问题是我必须这样做,才能访问我的信息: function SaveAsJPEG($json) { $string = json_encode($json); $obj = json_decode($string); $compressed = $obj-&g

我从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['compressed']”,我会收到一个错误),但我无法接收ByteArray数据。 我在flash中写道:

var tempObj:Object = new Object();
tempObj["jpgStream "]=  createBitStream(myBitmmapData);  // return ByteArray
tempObj["compressed"] = false;
tempObj["dir"] = linkToSave;
tempObj["name"] = this.imageName;
所以。。在我的php类中,我收到了所有正确的信息,除了“jpgStream”看起来是“null”之外


你知道吗?

我想你会因为json编码/解码而得到'null'。试用 $data = (array) $json; $compressed = $data['compressed']; $data=(数组)$json; $compressed=$data['compressed']; 这可能会有帮助