2

我正在以 AMF 格式从 flash 接收编码数据,但我想在 php 中对其进行解码。

我不知道如何使用库https://github.com/silexlabs/amfphp-2.0/blob/master/Amfphp/Core/Amf/Serializer.php

我找不到指示如何对 AMF 编码消息进行简单解码的示例代码

4

4 回答 4

2

我建议不要使用 Zend_Amf,它的编写考虑了一些神秘的误解,他们认为这是“架构”...... AMFPHP 仍然存在,并且由一些不太喜欢 Zend 的人维护http:// sourceforge.net/projects/amfphp/

这是他们的网站,其中包含有关如何设置的示例和说明等:http ://www.silexlabs.org/amfphp/

于 2012-09-13T17:22:17.980 回答
1

我曾经遇到过同样的问题,并解决如下。

您可以在 Flash 中使用 javascript base64 编码,而在 PHP 中可以使用 base64_decode 函数。我以前用过,效果很好。

于 2012-09-13T10:57:49.103 回答
0

看看nekoserver项目。它是用Haxe编写的 amfphp 的简化类似物。在那里您可以找到nekoserver.amf.io包,查看AmfDeserializer.hx(读取元数据)和Amf3Reader.hx(读取消息正文)。那里的一切都非常简单。好吧,我猜项目是用 Haxe 编写的这一事实对你来说不是很好,但你不应该害怕 Haxe 的语法与 Actionscript 语法非常相似。

另外我建议查看AMF 格式规范

PS。我是否正确理解您需要 AMF3(而不是 AMF0)?

于 2012-09-15T08:51:47.060 回答
0

看看一个非常可靠的 PHP 扩展,用于编码/解码 AMF3 流,而无需使用纯 PHP 编码器/解码器 - https://github.com/neoxic/php-amf3

于 2012-12-29T05:38:01.077 回答