لماذا يعد مخزن AMFPHP باعتباره بايت اثنين من بروتوكول AMF؟
سؤال
أتساءل عما إذا كان أي شخص على دراية AMFPHP أو تخزين البيانات المنخفضة المستوى يمكن أن يفسر سبب تخزين الأعداد الصحيحة كعضات من بايت بدلا من أربعة. بقدر ما أستطيع أن أقول، فإن بروتوكول AMF3 يطالب عددا صحيحا بنسبة أربعة بايت. رمز معين في المسلح هو ما يلي:
/**
* writeInt takes an int and writes it as 2 bytes to the output stream
* 0-65535 range
*
* @param int $n An integer to convert to a 2 byte binary string
*/
function writeInt($n) {
$this->outBuffer .= pack("n", $n); // use pack with the n flag
}
أدرك أن هذا السؤال قد يكون محددا للغاية، ولكن يمكن لأي شخص أن يساعد في الإجابة على سؤالي؟
المحلول
انظر هنا للحصول على تفسير لطيف تماما كيف يعمل:هيكل رسالة AMF؟
لا تنتمي إلى StackOverflow