API Documentation

Amf/Parse/Amf3/Deserializer.php

Includes Classes 
category
Zend
copyright
Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
license
http://framework.zend.com/license/new-bsd New BSD License
package
Zend_Amf
subpackage
Parse_Amf3
version
$Id: Deserializer.php 21969 2010-04-22 03:54:59Z matthew $
Classes
Zend_Amf_Parse_Amf3_Deserializer

Description

Zend Framework

LICENSE

This source file is subject to the new BSD license that is bundled with this package in the file LICENSE.txt. It is also available through the world-wide-web at this URL: http://framework.zend.com/license/new-bsd If you did not receive a copy of the license and are unable to obtain it through the world-wide-web, please send an email to license@zend.com so we can send you a copy immediately.

Zend_Amf_Parse_Amf3_Deserializer

Extends from
Zend_Amf_Parse_Deserializer
copyright
Copyright (c) 2005-2010 Zend Technologies USA Inc. (http://www.zend.com)
license
http://framework.zend.com/license/new-bsd New BSD License
package
Zend_Amf
subpackage
Parse_Amf3
todo
readObject to handle Typed Objects
todo
readXMLStrimg to be implemented.
todo
Class could be implemented as Factory Class with each data type it's own class.
Properties
$_objectCount
$_referenceObjects
$_referenceStrings
$_referenceDefinitions
Methods
readTypeMarker
readInteger
readString
readDate
readArray
readObject
readXmlString

Description

Read an AMF3 input stream and convert it into PHP data types.

Properties

$_objectCount

int $_objectCount = ''

Total number of objects in the referenceObject array

Details

$_objectCount
int
visibility
protected
default
final
false
static
false

$_referenceDefinitions

array $_referenceDefinitions = 'array'

An array of reference class definitions per body

Details

$_referenceDefinitions
array
visibility
protected
default
array
final
false
static
false

$_referenceObjects

array $_referenceObjects = 'array'

An array of reference objects per amf body

Details

$_referenceObjects
array
visibility
protected
default
array
final
false
static
false

$_referenceStrings

array $_referenceStrings = 'array'

An array of reference strings per amf body

Details

$_referenceStrings
array
visibility
protected
default
array
final
false
static
false

Methods

readArray

readArray( ) : array

Read amf array to PHP array

  • array = 0x09 integer-data ( [ 1OCTET *amf3-data ] | [OCTET *amf3-data 1] | [ OCTET *amf-data ] )
Output
array
Details
visibility
public
final
false
static
false

readDate

readDate( ) : Zend_Date

Read and deserialize a date

Data is the number of milliseconds elapsed since the epoch of midnight, 1st Jan 1970 in the UTC time zone. Local time zone information is not sent to flash.

  • date = 0x08 integer-data [ number-data ]
Output
Zend_Date
Details
visibility
public
final
false
static
false

readInteger

readInteger( ) : int|float

Read and deserialize an integer

AMF 3 represents smaller integers with fewer bytes using the most significant bit of each byte. The worst case uses 32-bits to represent a 29-bit number, which is what we would have done with no compression. - 0x00000000 - 0x0000007F : 0xxxxxxx - 0x00000080 - 0x00003FFF : 1xxxxxxx 0xxxxxxx - 0x00004000 - 0x001FFFFF : 1xxxxxxx 1xxxxxxx 0xxxxxxx - 0x00200000 - 0x3FFFFFFF : 1xxxxxxx 1xxxxxxx 1xxxxxxx xxxxxxxx - 0x40000000 - 0xFFFFFFFF : throw range exception

0x04 -> integer type code, followed by up to 4 bytes of data.

Parsing integers on OSFlash for the AMF3 integer data format:

Output
int|float
Details
visibility
public
final
false
static
false
link
http://osflash.org/amf3/parsing_integers

readObject

readObject( ) : object|array

Read an object from the AMF stream and convert it into a PHP object

Output
object|array
Details
visibility
public
final
false
static
false
todo
Rather than using an array of traitsInfo create Zend_Amf_Value_TraitsInfo

readString

readString( ) : String

Read and deserialize a string

Strings can be sent as a reference to a previously occurring String by using an index to the implicit string reference table. Strings are encoding using UTF-8 - however the header may either describe a string literal or a string reference.

  • string = 0x06 string-data
  • string-data = integer-data [ modified-utf-8 ]
  • modified-utf-8 = *OCTET
Output
String
Details
visibility
public
final
false
static
false

readTypeMarker

readTypeMarker( integer $typeMarker = null ) : mixed

Read AMF markers and dispatch for deserialization

Checks for AMF marker types and calls the appropriate methods for deserializing those marker types. markers are the data type of the following value.

Arguments
$typeMarker
integer
Output
mixed
Whatever the corresponding PHP data type is
Details
visibility
public
final
false
static
false
throws
for unidentified marker type

readXmlString

readXmlString( ) : SimpleXml

Convert XML to SimpleXml If user wants DomDocument they can use dom_import_simplexml

Output
SimpleXml
Object
Details
visibility
public
final
false
static
false
Documentation was generated by DocBlox.