[PHP] Тип данных "Number" в Action Script

Discussion in 'PHP' started by VKVOLK, 6 Jun 2011.

  1. VKVOLK

    VKVOLK Member

    Joined:
    22 Sep 2010
    Messages:
    7
    Likes Received:
    7
    Reputations:
    5
    Нужно получить значение reg_date из скрипта, возвращающего ответ в формате AMF.
    В Charles в вкладке AMF этот параметр прекрасно отображается:
    http://gyazo.com/5ab44265c1699f4d6bc5fd445f26fde7.png
    И равен 1150315200

    Но нужно же, чтобы скрипт на PHP самостоятельно мог прочитать этот параметр)

    Вот HEX-представление ответа:
    http://gyazo.com/3ec315f7f69f7d7ec7555b879e0d1ed5.png
    http://pastebin.com/Q2Hn5mth

    Я так понимаю, что нужное число закодировано в этих значениях:
    41 d1 24 1a b0 00 00 00 00 00 09

    Собственно вопрос - как раскодировать?
     
    1 person likes this.
  2. astrologer

    astrologer Elder - Старейшина

    Joined:
    30 Aug 2007
    Messages:
    837
    Likes Received:
    267
    Reputations:
    59
    В указанном стандарте, а также в английской википедии подробно описано, как "раскодировать".
     
  3. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    Можно взять библиотеки для раскодирования с этой самой вики, ну или с помощью http://php.net/unpack получить нужное число
     
    _________________________
  4. VKVOLK

    VKVOLK Member

    Joined:
    22 Sep 2010
    Messages:
    7
    Likes Received:
    7
    Reputations:
    5
    Нужное число кодируется паком в 00 00 00 b0 1a 24 d1 41, то-есть то что имеем в hex, только наоборот. Однако скрипту известно не число, а hex, поэтому пробуем:

    print_r(unpack('d',"0x000000b01a24d141"));

    и получаем какое-то левое число.
     
  5. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    VKVOLK
    PHP:
    $str "\x41\xd1\x24\x1a\xb0\x00\x00\x00";

    var_dump(unpack('d'strrev($str)));
     
    _________________________
  6. VKVOLK

    VKVOLK Member

    Joined:
    22 Sep 2010
    Messages:
    7
    Likes Received:
    7
    Reputations:
    5
    Gifts, благодарю.