/amfext

PHP 7 extension for Action Message Format (AMF) encoding and decoding with support for AMF0 and AMF3

Primary LanguagePHPApache License 2.0Apache-2.0

amfext

AMFEXT is a PHP 7 extension that provides encoding and decoding for AMF0 and AMF3

PHP7

master branch is now PHP 7

  • The tests provide reasonable coverage. All encoding/decoding tests from https://github.com/emilkm/efxphp have been used here, and some added as issues were discovered.

Build Status Build status

PHP5

For PHP5 see the php56 branch.

  • Compiles and works on Windows and Linux, but has some memory leaks outstanding.

  • No plans to work on it going forward.

DONE

  • Works well with https://github.com/emilkm/efxphp
  • Works well with https://github.com/emilkm/amfjs
  • Extension or not, encoded output and decoded input are the same, and are OK by Adobe/Apache BlazeDS.
  • Removed support for recordset.
  • Removed userland access to StringBuilder.
  • Removed transliteration support. Can look at adding it back if necessary.
  • Fixed various issues from the original version.
  • Changed the object serialization to support traits and traits references.
  • Setup Travis CI.
  • Setup AppVeyor.
  • Added scripts for testing through PHP CLI Server, which helped with detecting some issues.
  • Removed userland encoding/deconding callbacks. They were too much trouble. I went for stability over flexibility.
  • Date, ByteArray, and Vector are now handled in the extension.

TODO

  • Write docs.
  • ...